34 lines · c
1// RUN: %clang_cc1 %s -Eonly -Werror=undef -verify2 3extern int x;4 5#if foo // expected-error {{'foo' is not defined, evaluates to 0}}6#endif7 8// expected-warning@+2 {{use of a '#elifdef' directive is a C23 extension}}9#ifdef foo10#elifdef foo11#endif12 13#if defined(foo)14#endif15 16 17// PR393818// expected-warning@+3 {{use of a '#elifdef' directive is a C23 extension}}19#if 020#ifdef D21#elifdef D22#else 1 // Should not warn due to C99 6.10p423#endif24#endif25 26#if 027#else 1 // expected-warning {{extra tokens}}28#endif29 30// PR685231#if 'somesillylongthing' // expected-warning {{character constant too long for its type}} \32 // expected-warning {{multi-character character constant}}33#endif34