Compile with pedantic-errors, C99 or C90. extern int x; #if 1 ? 0: 1 ? 1/0: 1/0 #endif
Code is fine as the divisions by zero are unevaluated. -- Summary: Unevaluated PP expression rejected Product: gcc Version: 4.1.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: preprocessor AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: neil at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36088