#ifndef FOO #define FOO sizeof(void *) #elif FOO #endif t.c:3:7: error: missing binary operator before token "("
I expect it's caused by the fix to bug #36320. -- Summary: #elif <non-const expression #defined in this #if> breaks Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: preprocessor AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: h dot b dot furuseth at usit dot uio dot no GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38161