131
|
1 /* { dg-options "-fdiagnostics-show-caret" } */
|
|
2
|
|
3 #define MACRO_1(X,Y) /* { dg-line "def_of_MACRO_1" } */
|
|
4 void test_1 ()
|
|
5 {
|
|
6 MACRO_1(42); /* { dg-line "use_of_MACRO_1" } */
|
|
7 /* { dg-error "macro \"MACRO_1\" requires 2 arguments, but only 1 given" "" { target *-*-* } use_of_MACRO_1 } */
|
|
8 /* { dg-begin-multiline-output "" }
|
|
9 MACRO_1(42);
|
|
10 ^
|
|
11 { dg-end-multiline-output "" } */
|
|
12 /* { dg-message "-: macro .MACRO_1. defined here" "" { target *-*-* } def_of_MACRO_1 }
|
|
13 /* { dg-begin-multiline-output "" }
|
|
14 #define MACRO_1(X,Y)
|
|
15
|
|
16 { dg-end-multiline-output "" } */
|
|
17 /* { dg-error "'MACRO_1' undeclared" "" { target c } use_of_MACRO_1 }
|
|
18 /* { dg-error "'MACRO_1' was not declared in this scope" "" { target c++ } use_of_MACRO_1 }
|
|
19
|
|
20 /* { dg-begin-multiline-output "" }
|
|
21 MACRO_1(42);
|
|
22 ^~~~~~~
|
|
23 { dg-end-multiline-output "" } */
|
|
24 /* { dg-bogus "had not yet been defined" "" { target *-*-* } use_of_MACRO_1 } */
|
|
25 }
|
|
26
|
|
27 #define MACRO_2(X,Y) /* { dg-line "def_of_MACRO_2" } */
|
|
28 void test_2 ()
|
|
29 {
|
|
30 MACRO_2(1, 2, 3); /* { dg-line "use_of_MACRO_2" } */
|
|
31 /* { dg-error "macro \"MACRO_2\" passed 3 arguments, but takes just 2" "" { target *-*-* } use_of_MACRO_2 } */
|
|
32 /* { dg-begin-multiline-output "" }
|
|
33 MACRO_2(1, 2, 3);
|
|
34 ^
|
|
35 { dg-end-multiline-output "" } */
|
|
36 /* { dg-message "-: macro .MACRO_2. defined here" "" { target *-*-* } def_of_MACRO_2 }
|
|
37 /* { dg-begin-multiline-output "" }
|
|
38 #define MACRO_2(X,Y)
|
|
39
|
|
40 { dg-end-multiline-output "" } */
|
|
41 /* { dg-error "'MACRO_2' undeclared" "" { target c } use_of_MACRO_2 } */
|
|
42 /* { dg-error "'MACRO_2' was not declared in this scope" "" { target c++ } use_of_MACRO_2 } */
|
|
43 /* { dg-begin-multiline-output "" }
|
|
44 MACRO_2(1, 2, 3);
|
|
45 ^~~~~~~
|
|
46 { dg-end-multiline-output "" } */
|
|
47 /* { dg-bogus "had not yet been defined" "" { target *-*-* } use_of_MACRO_2 } */
|
|
48 }
|
|
49
|
|
50 #define MACRO_3
|
|
51 void test_3 ()
|
|
52 {
|
|
53 MACRO_3 (42);
|
|
54 }
|
|
55
|
|
56 #define MACRO_4(X,Y)
|
|
57 void test_4 ()
|
|
58 {
|
|
59 MACRO_4; /* { dg-line "use_of_MACRO_4" } */
|
|
60 /* { dg-error "'MACRO_4' undeclared" "" { target c } use_of_MACRO_4 } */
|
|
61 /* { dg-error "'MACRO_4' was not declared in this scope" "" { target c++ } use_of_MACRO_4 } */
|
|
62 /* { dg-begin-multiline-output "" }
|
|
63 MACRO_4;
|
|
64 ^~~~~~~
|
|
65 { dg-end-multiline-output "" } */
|
|
66 }
|