* gcc.dg/weak-1.c: Fix scan tests.
[official-gcc.git] / gcc / testsuite / gcc.dg / weak-1.c
blob894a248a6f9e51b4f417478aa0e8f04282e8a84e
1 /* { dg-do compile } */
2 /* COFF does not support weak, and dg doesn't support UNSUPPORTED. */
3 /* { dg-do compile { xfail *-*-coff i?86-pc-cygwin } } */
5 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?a" } } */
6 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?b" } } */
7 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?c" } } */
8 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?d" } } */
9 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?e" } } */
10 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?g" } } */
11 /* { dg-final { scan-assembler-not "weak\[^ \t\]*\[ \t]_?i" } } */
12 /* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t]_?j" } } */
14 #pragma weak a
15 int a;
17 int b;
18 #pragma weak b
20 #pragma weak c
21 extern int c;
22 int c;
24 extern int d;
25 #pragma weak d
26 int d;
28 #pragma weak e
29 void e(void) { }
31 #if 0
32 /* This permutation is illegal. */
33 void f(void) { }
34 #pragma weak f
35 #endif
37 #pragma weak g
38 int g = 1;
40 #if 0
41 /* This permutation is illegal. */
42 int h = 1;
43 #pragma weak h
44 #endif
46 #pragma weak i
47 extern int i;
49 #pragma weak j
50 extern int j;
51 int use_j() { return j; }