1 // { dg-do preprocess } 2 // { dg-options "-std=gnu99 -fdiagnostics-show-option -Wbuiltin-macro-redefined" } 3 4 #ifndef __TIME__ 5 #error "__TIME__ builtin is not defined" 6 // { dg-bogus "__TIME__ builtin is not defined" "no-time" { target *-*-* } .-1 } 7 #endif 8 9 #define __TIME__ "X" // { dg-warning "-:\"__TIME__\" redefined .-Wbuiltin-macro-redefined." } 10 11 #define __TIME__ "Y" // { dg-bogus "-Wbuiltin-macro-redefined" } 12 // { dg-warning "-:\"__TIME__\" redefined" "not-builtin-1" { target *-*-* } .-1 } 13 // { dg-message "-:previous definition" "previous-1" { target *-*-* } 9 } 14 15 #define X "X" 16 #define X "Y" // { dg-bogus "-Wbuiltin-macro-redefined" } 17 // { dg-warning "-:\"X\" redefined" "not-builtin-2" { target *-*-* } .-1 } 18 // { dg-message "-:previous definition" "previous-2" { target *-*-* } 15 } 19