xref: /llvm-project/clang/test/Lexer/warn-date-time.c (revision ed2c033b9beed8448945e340195ec426ef73ffdd)
14f43e554SAlp Toker // RUN: %clang_cc1 -Wdate-time -Wno-builtin-macro-redefined %s -verify -E
2*ed2c033bSAlp Toker // RUN: %clang_cc1 -Wdate-time -Wno-builtin-macro-redefined %s -DIS_SYSHEADER -verify -E
3*ed2c033bSAlp Toker // RUN: not %clang_cc1 -Werror=date-time -Wno-builtin-macro-redefined %s -DIS_SYSHEADER -E 2>&1 | grep 'error: expansion' | count 3
4*ed2c033bSAlp Toker 
5*ed2c033bSAlp Toker 
6*ed2c033bSAlp Toker #ifdef IS_HEADER
7*ed2c033bSAlp Toker 
8*ed2c033bSAlp Toker #ifdef IS_SYSHEADER
9*ed2c033bSAlp Toker #pragma clang system_header
10*ed2c033bSAlp Toker #endif
114f43e554SAlp Toker 
124f43e554SAlp Toker __TIME__ // expected-warning {{expansion of date or time macro is not reproducible}}
134f43e554SAlp Toker __DATE__  // expected-warning {{expansion of date or time macro is not reproducible}}
144f43e554SAlp Toker __TIMESTAMP__ // expected-warning {{expansion of date or time macro is not reproducible}}
154f43e554SAlp Toker 
164f43e554SAlp Toker #define __TIME__
174f43e554SAlp Toker __TIME__
18*ed2c033bSAlp Toker 
19*ed2c033bSAlp Toker #else
20*ed2c033bSAlp Toker 
21*ed2c033bSAlp Toker #define IS_HEADER
22*ed2c033bSAlp Toker #include __FILE__
23*ed2c033bSAlp Toker #endif
24