* diagnostic.h (diagnostic_override_option_index): New macro to
[official-gcc.git] / gcc / testsuite / gcc.dg / cpp / warn-redefined-2.c
blob83cc3df76103fc305b20d6abfcb45a7025aa9b48
1 // { dg-do preprocess }
2 // { dg-options "-std=gnu99 -fdiagnostics-show-option -Werror=builtin-macro-redefined" }
4 #ifndef __TIME__
5 #error "__TIME__ builtin is not defined"
6 // { dg-bogus "__TIME__ builtin is not defined" "no-time" { target *-*-* } 5 }
7 #endif
9 #define __TIME__ "X" // { dg-error "\"__TIME__\" redefined .-Wbuiltin-macro-redefined." }
11 #define __TIME__ "Y" // { dg-bogus "-Wbuiltin-macro-redefined" }
12 // { dg-warning "\"__TIME__\" redefined" "not-builtin-1" { target *-*-* } 11 }
13 // { dg-message "previous definition" "previous-1" { target *-*-* } 9 }
15 #define X "X"
16 #define X "Y" // { dg-bogus "-Wbuiltin-macro-redefined" }
17 // { dg-warning "\"X\" redefined" "not-builtin-2" { target *-*-* } 16 }
18 // { dg-message "previous definition" "previous-2" { target *-*-* } 15 }