Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/visibility-d.c @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 /* PR middle-end/20303 */ | |
2 /* Test nesting of #pragma GCC visibility. */ | |
3 /* { dg-do compile } */ | |
4 /* { dg-require-visibility "" } */ | |
5 /* { dg-final { scan-not-hidden "foo00" } } */ | |
6 /* { dg-final { scan-hidden "foo01" } } */ | |
7 /* { dg-final { scan-not-hidden "foo02" } } */ | |
8 /* { dg-final { scan-hidden "foo03" } } */ | |
9 /* { dg-final { scan-not-hidden "foo04" } } */ | |
10 /* { dg-final { scan-not-hidden "foo05" } } */ | |
11 /* { dg-final { scan-not-hidden "foo06" } } */ | |
12 /* { dg-final { scan-hidden "foo07" } } */ | |
13 /* { dg-final { scan-not-hidden "foo08" } } */ | |
14 /* { dg-final { scan-hidden "foo09" } } */ | |
15 /* { dg-final { scan-not-hidden "foo10" } } */ | |
16 /* { dg-final { scan-hidden "foo11" } } */ | |
17 /* { dg-final { scan-hidden "foo12" } } */ | |
18 /* { dg-final { scan-hidden "foo13" } } */ | |
19 /* { dg-final { scan-not-hidden "foo14" } } */ | |
20 /* { dg-final { scan-hidden "foo15" } } */ | |
21 /* { dg-final { scan-not-hidden "foo16" } } */ | |
22 /* { dg-final { scan-hidden "foo17" } } */ | |
23 /* { dg-final { scan-not-hidden "foo18" } } */ | |
24 /* { dg-final { scan-hidden "foo19" } } */ | |
25 /* { dg-final { scan-not-hidden "foo20" } } */ | |
26 /* { dg-final { scan-hidden "foo21" } } */ | |
27 /* { dg-final { scan-not-hidden "foo22" } } */ | |
28 /* { dg-final { scan-hidden "foo23" } } */ | |
29 /* { dg-final { scan-not-hidden "foo24" } } */ | |
30 /* { dg-final { scan-hidden "foo25" } } */ | |
31 /* { dg-final { scan-not-hidden "foo26" } } */ | |
32 /* { dg-final { scan-hidden "foo27" } } */ | |
33 /* { dg-final { scan-not-hidden "foo28" } } */ | |
34 /* { dg-final { scan-hidden "foo29" } } */ | |
35 /* { dg-final { scan-not-hidden "foo30" } } */ | |
36 /* { dg-final { scan-hidden "foo31" } } */ | |
37 /* { dg-final { scan-not-hidden "foo32" } } */ | |
38 /* { dg-final { scan-hidden "foo33" } } */ | |
39 /* { dg-final { scan-not-hidden "foo34" } } */ | |
40 /* { dg-final { scan-hidden "foo35" } } */ | |
41 /* { dg-final { scan-not-hidden "foo36" } } */ | |
42 /* { dg-final { scan-hidden "foo37" } } */ | |
43 /* { dg-final { scan-not-hidden "foo38" } } */ | |
44 /* { dg-final { scan-hidden "foo39" } } */ | |
45 /* { dg-final { scan-not-hidden "foo40" } } */ | |
46 /* { dg-final { scan-hidden "foo41" } } */ | |
47 /* { dg-final { scan-not-hidden "foo42" } } */ | |
48 /* { dg-final { scan-hidden "foo43" } } */ | |
49 /* { dg-final { scan-not-hidden "foo44" } } */ | |
50 /* { dg-final { scan-hidden "foo45" } } */ | |
51 /* { dg-final { scan-hidden "foo46" } } */ | |
52 /* { dg-final { scan-hidden "foo47" } } */ | |
53 /* { dg-final { scan-not-hidden "foo48" } } */ | |
54 /* { dg-final { scan-hidden "foo49" } } */ | |
55 /* { dg-final { scan-not-hidden "foo50" } } */ | |
56 /* { dg-final { scan-hidden "foo51" } } */ | |
57 /* { dg-final { scan-not-hidden "foo52" } } */ | |
58 /* { dg-final { scan-not-hidden "foo53" } } */ | |
59 /* { dg-final { scan-not-hidden "foo54" } } */ | |
60 /* { dg-final { scan-hidden "foo55" } } */ | |
61 /* { dg-final { scan-not-hidden "foo56" } } */ | |
62 /* { dg-final { scan-hidden "foo57" } } */ | |
63 /* { dg-final { scan-not-hidden "foo58" } } */ | |
64 /* { dg-final { scan-hidden "foo59" } } */ | |
65 | |
66 #pragma GCC visibility push(default) | |
67 void foo00(); | |
68 #pragma GCC visibility push(hidden) | |
69 void foo01(); | |
70 #pragma GCC visibility push(default) | |
71 void foo02(); | |
72 #pragma GCC visibility push(hidden) | |
73 void foo03(); | |
74 #pragma GCC visibility push(default) | |
75 void foo04(); | |
76 #pragma GCC visibility push(default) | |
77 void foo05(); | |
78 #pragma GCC visibility push(default) | |
79 void foo06(); | |
80 #pragma GCC visibility push(hidden) | |
81 void foo07(); | |
82 #pragma GCC visibility push(default) | |
83 void foo08(); | |
84 #pragma GCC visibility push(hidden) | |
85 void foo09(); | |
86 #pragma GCC visibility push(default) | |
87 void foo10(); | |
88 #pragma GCC visibility push(hidden) | |
89 void foo11(); | |
90 #pragma GCC visibility push(hidden) | |
91 void foo12(); | |
92 #pragma GCC visibility push(hidden) | |
93 void foo13(); | |
94 #pragma GCC visibility push(default) | |
95 void foo14(); | |
96 #pragma GCC visibility push(hidden) | |
97 void foo15(); | |
98 #pragma GCC visibility push(default) | |
99 void foo16(); | |
100 #pragma GCC visibility push(hidden) | |
101 void foo17(); | |
102 #pragma GCC visibility push(default) | |
103 void foo18(); | |
104 #pragma GCC visibility push(hidden) | |
105 void foo19(); | |
106 #pragma GCC visibility push(default) | |
107 void foo20(); | |
108 #pragma GCC visibility push(hidden) | |
109 void foo21(); | |
110 #pragma GCC visibility push(default) | |
111 void foo22(); | |
112 #pragma GCC visibility push(hidden) | |
113 void foo23(); | |
114 #pragma GCC visibility push(default) | |
115 void foo24(); | |
116 #pragma GCC visibility push(hidden) | |
117 void foo25(); | |
118 #pragma GCC visibility push(default) | |
119 void foo26(); | |
120 #pragma GCC visibility push(hidden) | |
121 void foo27(); | |
122 #pragma GCC visibility push(default) | |
123 void foo28(); | |
124 #pragma GCC visibility push(hidden) | |
125 void foo29(); | |
126 #pragma GCC visibility pop | |
127 void foo30(); | |
128 #pragma GCC visibility pop | |
129 void foo31(); | |
130 #pragma GCC visibility pop | |
131 void foo32(); | |
132 #pragma GCC visibility pop | |
133 void foo33(); | |
134 #pragma GCC visibility pop | |
135 void foo34(); | |
136 #pragma GCC visibility pop | |
137 void foo35(); | |
138 #pragma GCC visibility pop | |
139 void foo36(); | |
140 #pragma GCC visibility pop | |
141 void foo37(); | |
142 #pragma GCC visibility pop | |
143 void foo38(); | |
144 #pragma GCC visibility pop | |
145 void foo39(); | |
146 #pragma GCC visibility pop | |
147 void foo40(); | |
148 #pragma GCC visibility pop | |
149 void foo41(); | |
150 #pragma GCC visibility pop | |
151 void foo42(); | |
152 #pragma GCC visibility pop | |
153 void foo43(); | |
154 #pragma GCC visibility pop | |
155 void foo44(); | |
156 #pragma GCC visibility pop | |
157 void foo45(); | |
158 #pragma GCC visibility pop | |
159 void foo46(); | |
160 #pragma GCC visibility pop | |
161 void foo47(); | |
162 #pragma GCC visibility pop | |
163 void foo48(); | |
164 #pragma GCC visibility pop | |
165 void foo49(); | |
166 #pragma GCC visibility pop | |
167 void foo50(); | |
168 #pragma GCC visibility pop | |
169 void foo51(); | |
170 #pragma GCC visibility pop | |
171 void foo52(); | |
172 #pragma GCC visibility pop | |
173 void foo53(); | |
174 #pragma GCC visibility pop | |
175 void foo54(); | |
176 #pragma GCC visibility pop | |
177 void foo55(); | |
178 #pragma GCC visibility pop | |
179 void foo56(); | |
180 #pragma GCC visibility pop | |
181 void foo57(); | |
182 #pragma GCC visibility pop | |
183 void foo58(); | |
184 #pragma GCC visibility push (hidden) | |
185 void foo59(); | |
186 #pragma GCC visibility pop | |
187 #pragma GCC visibility pop | |
188 | |
189 #define D(N) \ | |
190 void foo##N##0() { } \ | |
191 void foo##N##1() { } \ | |
192 void foo##N##2() { } \ | |
193 void foo##N##3() { } \ | |
194 void foo##N##4() { } \ | |
195 void foo##N##5() { } \ | |
196 void foo##N##6() { } \ | |
197 void foo##N##7() { } \ | |
198 void foo##N##8() { } \ | |
199 void foo##N##9() { } | |
200 D(0) | |
201 D(1) | |
202 D(2) | |
203 D(3) | |
204 D(4) | |
205 D(5) |