Created attachment 32464 [details] testcase.cpp int main () { int(*) = 0; } ---------------------------------------------------------------------------------- The above compiles but the above is not legal according to any section of the Standard. `clang` correctly throws out a diagnostic saying that the line in question is ill-formed. There are many variations on the above that gcc happily accepts, such as: `auto(*)(int) = 0`, `auto(*)() = 0`, etc, etc.
This is now rejected: 60680.C: In function ‘int main()’: 60680.C:2:3: error: expected primary-expression before ‘int’ 2 | int(*) = 0; | ^~~