Merge -r 127928:132243 from trunk
[official-gcc.git] / gcc / testsuite / gcc.dg / cpp / trad / builtins.c
blob74798bbb47f55cf4789e7005a27896b94184752e
1 /* Test that builtin-macros are OK. */
3 /* { dg-do run } */
5 #include "builtins.h"
7 void abort (void);
8 char *strstr (const char *, const char *);
9 int strcmp (const char *, const char *);
11 #define LINE __LINE__
13 #if __LINE__ != 13
14 # error __LINE__ part 1 /* { dg-bogus "__LINE__" } */
15 #endif
17 #if \
18 __LINE__ != 18
19 # error __LINE__ part 2 /* { dg-bogus "__LINE__" } */
20 #endif
22 #if LINE != 22
23 # error __LINE__ part 3 /* { dg-bogus "__LINE__" } */
24 #endif
26 #if __INCLUDE_LEVEL != 0
27 # error __INCLUDE_LEVEL__ /* { dg-bogus "__INCLUDE_LEVEL__" } */
28 #endif
30 #if !defined (__TIME__)
31 # error __TIME__ /* { dg-bogus "__TIME__" } */
32 #endif
34 #if !defined (__DATE__)
35 # error __DATE__ /* { dg-bogus "__DATE__" } */
36 #endif
39 int main ()
41 /* level is defined in builtins.h. */
42 if (level != 1)
43 abort ();
45 if (!strstr (__FILE__, "builtins.c"))
46 abort ();
48 if (!strcmp (__BASE_FILE__, "builtins.c"))
49 abort ();
51 return 0;
54 /* { dg-require-host-local "" } */