]>
Commit | Line | Data |
---|---|---|
8af2fec4 RY |
1 | // I, Howard Hinnant, hereby place this code in the public domain. |
2 | ||
e7f1930f | 3 | // Test overload resolution among reference types |
8af2fec4 | 4 | |
4b2e63de | 5 | // { dg-do compile { target c++11 } } |
c74459ea | 6 | // { dg-options "-fno-ipa-icf" } |
8af2fec4 RY |
7 | |
8 | template <bool> struct sa; | |
9 | template <> struct sa<true> {}; | |
10 | ||
11 | struct one {char x[1];}; | |
12 | struct two {char x[2];}; | |
13 | struct three {char x[3];}; | |
14 | struct four {char x[4];}; | |
15 | struct five {char x[5];}; | |
16 | struct six {char x[6];}; | |
17 | struct seven {char x[7];}; | |
18 | struct eight {char x[8];}; | |
19 | ||
20 | struct A | |
21 | { | |
22 | A(); | |
a2e70335 | 23 | A(const volatile A&&); |
8af2fec4 RY |
24 | }; |
25 | ||
26 | A source(); | |
27 | const A c_source(); | |
8a902edb MP |
28 | volatile A v_source(); // { dg-warning "deprecated" "" { target c++2a } } |
29 | const volatile A cv_source(); // { dg-warning "deprecated" "" { target c++2a } } | |
8af2fec4 RY |
30 | |
31 | // 3 at a time | |
32 | ||
89606913 JM |
33 | one sink_3_123( A&); |
34 | two sink_3_123(const A&); | |
35 | three sink_3_123(volatile A&); | |
8af2fec4 RY |
36 | |
37 | int test3_123() | |
38 | { | |
39 | A a; | |
a2e70335 | 40 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 41 | volatile A va; |
a2e70335 | 42 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
43 | sink_3_123(cva); // { dg-error "" } |
44 | sink_3_123(v_source()); // { dg-error "" } | |
45 | sink_3_123(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
46 | return 0; |
47 | } | |
48 | ||
89606913 JM |
49 | one sink_3_125( A&); |
50 | two sink_3_125(const A&); | |
51 | five sink_3_125( A&&); | |
8af2fec4 | 52 | |
89606913 JM |
53 | one sink_3_124( A&); |
54 | two sink_3_124(const A&); | |
55 | four sink_3_124(const volatile A&); | |
8af2fec4 RY |
56 | |
57 | int test3_124() | |
58 | { | |
59 | A a; | |
a2e70335 | 60 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 61 | volatile A va; |
a2e70335 | 62 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
63 | sink_3_124(v_source()); // { dg-error "" } |
64 | sink_3_124(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
65 | return 0; |
66 | } | |
67 | ||
68 | int test3_125() | |
69 | { | |
70 | A a; | |
a2e70335 | 71 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 72 | volatile A va; |
a2e70335 | 73 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
74 | sink_3_125(va); // { dg-error "" } |
75 | sink_3_125(cva); // { dg-error "" } | |
76 | sink_3_125(v_source()); // { dg-error "" } | |
77 | sink_3_125(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
78 | return 0; |
79 | } | |
80 | ||
89606913 JM |
81 | one sink_3_126( A&); |
82 | two sink_3_126(const A&); | |
83 | six sink_3_126(const A&&); | |
8af2fec4 RY |
84 | |
85 | int test3_126() | |
86 | { | |
87 | A a; | |
a2e70335 | 88 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 89 | volatile A va; |
a2e70335 | 90 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
91 | sink_3_126(va); // { dg-error "" } |
92 | sink_3_126(cva); // { dg-error "" } | |
93 | sink_3_126(v_source()); // { dg-error "" } | |
94 | sink_3_126(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
95 | return 0; |
96 | } | |
97 | ||
89606913 JM |
98 | one sink_3_127( A&); |
99 | two sink_3_127(const A&); | |
100 | seven sink_3_127(volatile A&&); | |
8af2fec4 RY |
101 | |
102 | int test3_127() | |
103 | { | |
104 | A a; | |
a2e70335 | 105 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 106 | volatile A va; |
a2e70335 | 107 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
108 | sink_3_127(va); // { dg-error "" } |
109 | sink_3_127(cva); // { dg-error "" } | |
110 | sink_3_127(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
111 | return 0; |
112 | } | |
113 | ||
e7f1930f JM |
114 | one sink_3_128( A&); |
115 | two sink_3_128(const A&); | |
89606913 | 116 | eight sink_3_128(const volatile A&&); |
e7f1930f JM |
117 | |
118 | int test3_128() | |
119 | { | |
120 | A a; | |
a2e70335 | 121 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 122 | volatile A va; |
a2e70335 | 123 | const volatile A cva = a; // { dg-error "deleted" } |
e7f1930f | 124 | |
89606913 JM |
125 | sink_3_128(va); // { dg-error "" } |
126 | sink_3_128(cva); // { dg-error "" } | |
19520957 | 127 | return 0; |
e7f1930f JM |
128 | } |
129 | ||
89606913 JM |
130 | one sink_3_134( A&); |
131 | three sink_3_134(volatile A&); | |
132 | four sink_3_134(const volatile A&); | |
8af2fec4 RY |
133 | |
134 | int test3_134() | |
135 | { | |
136 | A a; | |
a2e70335 | 137 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 138 | volatile A va; |
a2e70335 | 139 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
140 | sink_3_134(source()); // { dg-error "" } |
141 | sink_3_134(c_source()); // { dg-error "" } | |
142 | sink_3_134(v_source()); // { dg-error "" } | |
143 | sink_3_134(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
144 | return 0; |
145 | } | |
146 | ||
89606913 JM |
147 | one sink_3_135( A&); |
148 | three sink_3_135(volatile A&); | |
149 | five sink_3_135( A&&); | |
8af2fec4 RY |
150 | |
151 | int test3_135() | |
152 | { | |
153 | A a; | |
a2e70335 | 154 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 155 | volatile A va; |
a2e70335 | 156 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
157 | sink_3_135(ca); // { dg-error "" } |
158 | sink_3_135(cva); // { dg-error "" } | |
159 | sink_3_135(c_source()); // { dg-error "" } | |
160 | sink_3_135(v_source()); // { dg-error "" } | |
161 | sink_3_135(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
162 | return 0; |
163 | } | |
164 | ||
89606913 JM |
165 | one sink_3_136( A&); |
166 | three sink_3_136(volatile A&); | |
167 | six sink_3_136(const A&&); | |
8af2fec4 RY |
168 | |
169 | int test3_136() | |
170 | { | |
171 | A a; | |
a2e70335 | 172 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 173 | volatile A va; |
a2e70335 | 174 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
175 | sink_3_136(ca); // { dg-error "" } |
176 | sink_3_136(cva); // { dg-error "" } | |
177 | sink_3_136(v_source()); // { dg-error "" } | |
178 | sink_3_136(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
179 | return 0; |
180 | } | |
181 | ||
89606913 JM |
182 | one sink_3_137( A&); |
183 | three sink_3_137(volatile A&); | |
184 | seven sink_3_137(volatile A&&); | |
8af2fec4 RY |
185 | |
186 | int test3_137() | |
187 | { | |
188 | A a; | |
a2e70335 | 189 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 190 | volatile A va; |
a2e70335 | 191 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
192 | sink_3_137(ca); // { dg-error "" } |
193 | sink_3_137(cva); // { dg-error "" } | |
194 | sink_3_137(c_source()); // { dg-error "" } | |
195 | sink_3_137(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
196 | return 0; |
197 | } | |
198 | ||
e7f1930f JM |
199 | one sink_3_138( A&); |
200 | three sink_3_138(volatile A&); | |
89606913 | 201 | eight sink_3_138(const volatile A&&); |
e7f1930f JM |
202 | |
203 | int test3_138() | |
204 | { | |
205 | A a; | |
a2e70335 | 206 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 207 | volatile A va; |
a2e70335 | 208 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
209 | sink_3_138(ca); // { dg-error "" } |
210 | sink_3_138(cva); // { dg-error "" } | |
e7f1930f JM |
211 | return 0; |
212 | } | |
213 | ||
89606913 JM |
214 | one sink_3_145( A&); |
215 | four sink_3_145(const volatile A&); | |
216 | five sink_3_145( A&&); | |
8af2fec4 RY |
217 | |
218 | int test3_145() | |
219 | { | |
220 | A a; | |
a2e70335 | 221 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 222 | volatile A va; |
a2e70335 | 223 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
224 | sink_3_145(c_source()); // { dg-error "" } |
225 | sink_3_145(v_source()); // { dg-error "" } | |
226 | sink_3_145(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
227 | return 0; |
228 | } | |
229 | ||
89606913 JM |
230 | one sink_3_146( A&); |
231 | four sink_3_146(const volatile A&); | |
232 | six sink_3_146(const A&&); | |
8af2fec4 RY |
233 | |
234 | int test3_146() | |
235 | { | |
236 | A a; | |
a2e70335 | 237 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 238 | volatile A va; |
a2e70335 | 239 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
240 | sink_3_146(v_source()); // { dg-error "" } |
241 | sink_3_146(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
242 | return 0; |
243 | } | |
244 | ||
89606913 JM |
245 | one sink_3_147( A&); |
246 | four sink_3_147(const volatile A&); | |
247 | seven sink_3_147(volatile A&&); | |
8af2fec4 RY |
248 | |
249 | int test3_147() | |
250 | { | |
251 | A a; | |
a2e70335 | 252 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 253 | volatile A va; |
a2e70335 | 254 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
255 | sink_3_147(c_source()); // { dg-error "" } |
256 | sink_3_147(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
257 | return 0; |
258 | } | |
259 | ||
89606913 JM |
260 | one sink_3_156( A&); |
261 | five sink_3_156( A&&); | |
262 | six sink_3_156(const A&&); | |
8af2fec4 RY |
263 | |
264 | int test3_156() | |
265 | { | |
266 | A a; | |
a2e70335 | 267 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 268 | volatile A va; |
a2e70335 | 269 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
270 | sink_3_156(ca); // { dg-error "" } |
271 | sink_3_156(va); // { dg-error "" } | |
272 | sink_3_156(cva); // { dg-error "" } | |
273 | sink_3_156(v_source()); // { dg-error "" } | |
274 | sink_3_156(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
275 | return 0; |
276 | } | |
277 | ||
89606913 JM |
278 | one sink_3_157( A&); |
279 | five sink_3_157( A&&); | |
280 | seven sink_3_157(volatile A&&); | |
8af2fec4 RY |
281 | |
282 | int test3_157() | |
283 | { | |
284 | A a; | |
a2e70335 | 285 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 286 | volatile A va; |
a2e70335 | 287 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
288 | sink_3_157(ca); // { dg-error "" } |
289 | sink_3_157(va); // { dg-error "" } | |
290 | sink_3_157(cva); // { dg-error "" } | |
291 | sink_3_157(c_source()); // { dg-error "" } | |
292 | sink_3_157(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
293 | return 0; |
294 | } | |
295 | ||
e7f1930f JM |
296 | one sink_3_158( A&); |
297 | five sink_3_158( A&&); | |
89606913 | 298 | eight sink_3_158(const volatile A&&); |
e7f1930f JM |
299 | |
300 | int test3_158() | |
301 | { | |
302 | A a; | |
a2e70335 | 303 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 304 | volatile A va; |
a2e70335 | 305 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
306 | sink_3_158(ca); // { dg-error "" } |
307 | sink_3_158(va); // { dg-error "" } | |
308 | sink_3_158(cva); // { dg-error "" } | |
e7f1930f JM |
309 | return 0; |
310 | } | |
311 | ||
89606913 JM |
312 | one sink_3_167( A&); |
313 | six sink_3_167(const A&&); | |
314 | seven sink_3_167(volatile A&&); | |
8af2fec4 RY |
315 | |
316 | int test3_167() | |
317 | { | |
318 | A a; | |
a2e70335 | 319 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 320 | volatile A va; |
a2e70335 | 321 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
322 | sink_3_167(ca); // { dg-error "" } |
323 | sink_3_167(va); // { dg-error "" } | |
324 | sink_3_167(cva); // { dg-error "" } | |
325 | sink_3_167(source()); // { dg-error "" } | |
326 | sink_3_167(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
327 | return 0; |
328 | } | |
329 | ||
e7f1930f | 330 | one sink_3_168( A&); |
89606913 JM |
331 | six sink_3_168(const A&&); |
332 | eight sink_3_168(const volatile A&&); | |
e7f1930f JM |
333 | |
334 | int test3_168() | |
335 | { | |
336 | A a; | |
a2e70335 | 337 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 338 | volatile A va; |
a2e70335 | 339 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
340 | sink_3_168(ca); // { dg-error "" } |
341 | sink_3_168(va); // { dg-error "" } | |
342 | sink_3_168(cva); // { dg-error "" } | |
e7f1930f JM |
343 | return 0; |
344 | } | |
345 | ||
346 | one sink_3_178( A&); | |
89606913 JM |
347 | seven sink_3_178(volatile A&&); |
348 | eight sink_3_178(const volatile A&&); | |
e7f1930f JM |
349 | |
350 | int test3_178() | |
351 | { | |
352 | A a; | |
a2e70335 | 353 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 354 | volatile A va; |
a2e70335 | 355 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
356 | sink_3_178(ca); // { dg-error "" } |
357 | sink_3_178(va); // { dg-error "" } | |
358 | sink_3_178(cva); // { dg-error "" } | |
e7f1930f JM |
359 | return 0; |
360 | } | |
361 | ||
89606913 JM |
362 | two sink_3_234(const A&); |
363 | three sink_3_234(volatile A&); | |
364 | four sink_3_234(const volatile A&); | |
8af2fec4 RY |
365 | |
366 | int test3_234() | |
367 | { | |
368 | A a; | |
a2e70335 | 369 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 370 | volatile A va; |
a2e70335 | 371 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
372 | sink_3_234(a); // { dg-error "" } |
373 | sink_3_234(v_source()); // { dg-error "" } | |
374 | sink_3_234(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
375 | return 0; |
376 | } | |
377 | ||
89606913 JM |
378 | two sink_3_235(const A&); |
379 | three sink_3_235(volatile A&); | |
380 | five sink_3_235( A&&); | |
8af2fec4 RY |
381 | |
382 | int test3_235() | |
383 | { | |
384 | A a; | |
a2e70335 | 385 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 386 | volatile A va; |
a2e70335 | 387 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
388 | sink_3_235(a); // { dg-error "" } |
389 | sink_3_235(cva); // { dg-error "" } | |
390 | sink_3_235(v_source()); // { dg-error "" } | |
391 | sink_3_235(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
392 | return 0; |
393 | } | |
394 | ||
89606913 JM |
395 | two sink_3_236(const A&); |
396 | three sink_3_236(volatile A&); | |
397 | six sink_3_236(const A&&); | |
8af2fec4 RY |
398 | |
399 | int test3_236() | |
400 | { | |
401 | A a; | |
a2e70335 | 402 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 403 | volatile A va; |
a2e70335 | 404 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
405 | sink_3_236(a); // { dg-error "" } |
406 | sink_3_236(cva); // { dg-error "" } | |
407 | sink_3_236(v_source()); // { dg-error "" } | |
408 | sink_3_236(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
409 | return 0; |
410 | } | |
411 | ||
89606913 JM |
412 | two sink_3_237(const A&); |
413 | three sink_3_237(volatile A&); | |
414 | seven sink_3_237(volatile A&&); | |
8af2fec4 RY |
415 | |
416 | int test3_237() | |
417 | { | |
418 | A a; | |
a2e70335 | 419 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 420 | volatile A va; |
a2e70335 | 421 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
422 | sink_3_237(a); // { dg-error "" } |
423 | sink_3_237(cva); // { dg-error "" } | |
424 | sink_3_237(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
425 | return 0; |
426 | } | |
427 | ||
89606913 JM |
428 | two sink_3_238(const A&); |
429 | three sink_3_238(volatile A&); | |
430 | eight sink_3_238(const volatile A&&); | |
8af2fec4 RY |
431 | |
432 | int test3_238() | |
433 | { | |
434 | A a; | |
a2e70335 | 435 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 436 | volatile A va; |
a2e70335 | 437 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
438 | sink_3_238(a); // { dg-error "" } |
439 | sink_3_238(cva); // { dg-error "" } | |
8af2fec4 RY |
440 | return 0; |
441 | } | |
442 | ||
89606913 JM |
443 | two sink_3_245(const A&); |
444 | four sink_3_245(const volatile A&); | |
445 | five sink_3_245( A&&); | |
8af2fec4 RY |
446 | |
447 | int test3_245() | |
448 | { | |
449 | A a; | |
a2e70335 | 450 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 451 | volatile A va; |
a2e70335 | 452 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
453 | sink_3_245(v_source()); // { dg-error "" } |
454 | sink_3_245(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
455 | return 0; |
456 | } | |
457 | ||
89606913 JM |
458 | two sink_3_246(const A&); |
459 | four sink_3_246(const volatile A&); | |
460 | six sink_3_246(const A&&); | |
8af2fec4 RY |
461 | |
462 | int test3_246() | |
463 | { | |
464 | A a; | |
a2e70335 | 465 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 466 | volatile A va; |
a2e70335 | 467 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
468 | sink_3_246(v_source()); // { dg-error "" } |
469 | sink_3_246(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
470 | return 0; |
471 | } | |
472 | ||
89606913 JM |
473 | two sink_3_247(const A&); |
474 | four sink_3_247(const volatile A&); | |
475 | seven sink_3_247(volatile A&&); | |
8af2fec4 RY |
476 | |
477 | int test3_247() | |
478 | { | |
479 | A a; | |
a2e70335 | 480 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 481 | volatile A va; |
a2e70335 | 482 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 | 483 | sink_3_247(cv_source()); // { dg-error "" } |
8af2fec4 RY |
484 | return 0; |
485 | } | |
486 | ||
89606913 JM |
487 | two sink_3_256(const A&); |
488 | five sink_3_256( A&&); | |
489 | six sink_3_256(const A&&); | |
8af2fec4 RY |
490 | |
491 | int test3_256() | |
492 | { | |
493 | A a; | |
a2e70335 | 494 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 495 | volatile A va; |
a2e70335 | 496 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
497 | sink_3_256(va); // { dg-error "" } |
498 | sink_3_256(cva); // { dg-error "" } | |
499 | sink_3_256(v_source()); // { dg-error "" } | |
500 | sink_3_256(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
501 | return 0; |
502 | } | |
503 | ||
89606913 JM |
504 | two sink_3_257(const A&); |
505 | five sink_3_257( A&&); | |
506 | seven sink_3_257(volatile A&&); | |
8af2fec4 RY |
507 | |
508 | int test3_257() | |
509 | { | |
510 | A a; | |
a2e70335 | 511 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 512 | volatile A va; |
a2e70335 | 513 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
514 | sink_3_257(va); // { dg-error "" } |
515 | sink_3_257(cva); // { dg-error "" } | |
516 | sink_3_257(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
517 | return 0; |
518 | } | |
519 | ||
e7f1930f JM |
520 | two sink_3_258(const A&); |
521 | five sink_3_258( A&&); | |
89606913 | 522 | eight sink_3_258(const volatile A&&); |
e7f1930f JM |
523 | |
524 | int test3_258() | |
525 | { | |
526 | A a; | |
a2e70335 | 527 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 528 | volatile A va; |
a2e70335 | 529 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
530 | sink_3_258(va); // { dg-error "" } |
531 | sink_3_258(cva); // { dg-error "" } | |
e7f1930f JM |
532 | return 0; |
533 | } | |
534 | ||
89606913 JM |
535 | two sink_3_267(const A&); |
536 | six sink_3_267(const A&&); | |
537 | seven sink_3_267(volatile A&&); | |
8af2fec4 RY |
538 | |
539 | int test3_267() | |
540 | { | |
541 | A a; | |
a2e70335 | 542 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 543 | volatile A va; |
a2e70335 | 544 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
545 | sink_3_267(va); // { dg-error "" } |
546 | sink_3_267(cva); // { dg-error "" } | |
547 | sink_3_267(source()); // { dg-error "" } | |
548 | sink_3_267(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
549 | return 0; |
550 | } | |
551 | ||
e7f1930f JM |
552 | two sink_3_268(const A&); |
553 | six sink_3_268(const A&&); | |
89606913 | 554 | eight sink_3_268(const volatile A&&); |
e7f1930f JM |
555 | |
556 | int test3_268() | |
557 | { | |
558 | A a; | |
a2e70335 | 559 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 560 | volatile A va; |
a2e70335 | 561 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
562 | sink_3_268(va); // { dg-error "" } |
563 | sink_3_268(cva); // { dg-error "" } | |
e7f1930f JM |
564 | return 0; |
565 | } | |
566 | ||
567 | two sink_3_278(const A&); | |
89606913 JM |
568 | seven sink_3_278(volatile A&&); |
569 | eight sink_3_278(const volatile A&&); | |
e7f1930f JM |
570 | |
571 | int test3_278() | |
572 | { | |
573 | A a; | |
a2e70335 | 574 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 575 | volatile A va; |
a2e70335 | 576 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
577 | sink_3_278(va); // { dg-error "" } |
578 | sink_3_278(cva); // { dg-error "" } | |
e7f1930f JM |
579 | return 0; |
580 | } | |
581 | ||
89606913 JM |
582 | three sink_3_345(volatile A&); |
583 | four sink_3_345(const volatile A&); | |
584 | five sink_3_345( A&&); | |
8af2fec4 RY |
585 | |
586 | int test3_345() | |
587 | { | |
588 | A a; | |
a2e70335 | 589 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 590 | volatile A va; |
a2e70335 | 591 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
592 | sink_3_345(c_source()); // { dg-error "" } |
593 | sink_3_345(v_source()); // { dg-error "" } | |
594 | sink_3_345(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
595 | return 0; |
596 | } | |
597 | ||
89606913 JM |
598 | three sink_3_346(volatile A&); |
599 | four sink_3_346(const volatile A&); | |
600 | six sink_3_346(const A&&); | |
8af2fec4 RY |
601 | |
602 | int test3_346() | |
603 | { | |
604 | A a; | |
a2e70335 | 605 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 606 | volatile A va; |
a2e70335 | 607 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
608 | sink_3_346(v_source()); // { dg-error "" } |
609 | sink_3_346(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
610 | return 0; |
611 | } | |
612 | ||
89606913 JM |
613 | three sink_3_347(volatile A&); |
614 | four sink_3_347(const volatile A&); | |
615 | seven sink_3_347(volatile A&&); | |
8af2fec4 RY |
616 | |
617 | int test3_347() | |
618 | { | |
619 | A a; | |
a2e70335 | 620 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 621 | volatile A va; |
a2e70335 | 622 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
623 | sink_3_347(c_source()); // { dg-error "" } |
624 | sink_3_347(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
625 | return 0; |
626 | } | |
627 | ||
89606913 JM |
628 | three sink_3_356(volatile A&); |
629 | five sink_3_356( A&&); | |
630 | six sink_3_356(const A&&); | |
8af2fec4 RY |
631 | |
632 | int test3_356() | |
633 | { | |
634 | A a; | |
a2e70335 | 635 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 636 | volatile A va; |
a2e70335 | 637 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
638 | sink_3_356(ca); // { dg-error "" } |
639 | sink_3_356(cva); // { dg-error "" } | |
640 | sink_3_356(v_source()); // { dg-error "" } | |
641 | sink_3_356(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
642 | return 0; |
643 | } | |
644 | ||
89606913 JM |
645 | three sink_3_357(volatile A&); |
646 | five sink_3_357( A&&); | |
647 | seven sink_3_357(volatile A&&); | |
8af2fec4 RY |
648 | |
649 | int test3_357() | |
650 | { | |
651 | A a; | |
a2e70335 | 652 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 653 | volatile A va; |
a2e70335 | 654 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
655 | sink_3_357(ca); // { dg-error "" } |
656 | sink_3_357(cva); // { dg-error "" } | |
657 | sink_3_357(c_source()); // { dg-error "" } | |
658 | sink_3_357(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
659 | return 0; |
660 | } | |
661 | ||
e7f1930f JM |
662 | three sink_3_358(volatile A&); |
663 | five sink_3_358( A&&); | |
89606913 | 664 | eight sink_3_358(const volatile A&&); |
e7f1930f JM |
665 | |
666 | int test3_358() | |
667 | { | |
668 | A a; | |
a2e70335 | 669 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 670 | volatile A va; |
a2e70335 | 671 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
672 | sink_3_358(ca); // { dg-error "" } |
673 | sink_3_358(cva); // { dg-error "" } | |
e7f1930f JM |
674 | return 0; |
675 | } | |
676 | ||
89606913 JM |
677 | three sink_3_367(volatile A&); |
678 | six sink_3_367(const A&&); | |
679 | seven sink_3_367(volatile A&&); | |
8af2fec4 RY |
680 | |
681 | int test3_367() | |
682 | { | |
683 | A a; | |
a2e70335 | 684 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 685 | volatile A va; |
a2e70335 | 686 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
687 | sink_3_367(ca); // { dg-error "" } |
688 | sink_3_367(cva); // { dg-error "" } | |
689 | sink_3_367(source()); // { dg-error "" } | |
690 | sink_3_367(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
691 | return 0; |
692 | } | |
693 | ||
e7f1930f | 694 | three sink_3_368(volatile A&); |
89606913 JM |
695 | six sink_3_368(const A&&); |
696 | eight sink_3_368(const volatile A&&); | |
e7f1930f JM |
697 | |
698 | int test3_368() | |
699 | { | |
700 | A a; | |
a2e70335 | 701 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 702 | volatile A va; |
a2e70335 | 703 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
704 | sink_3_368(ca); // { dg-error "" } |
705 | sink_3_368(cva); // { dg-error "" } | |
e7f1930f JM |
706 | return 0; |
707 | } | |
708 | ||
709 | three sink_3_378(volatile A&); | |
710 | seven sink_3_378(volatile A&&); | |
89606913 | 711 | eight sink_3_378(const volatile A&&); |
e7f1930f JM |
712 | |
713 | int test3_378() | |
714 | { | |
715 | A a; | |
a2e70335 | 716 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 717 | volatile A va; |
a2e70335 | 718 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
719 | sink_3_378(ca); // { dg-error "" } |
720 | sink_3_378(cva); // { dg-error "" } | |
e7f1930f JM |
721 | return 0; |
722 | } | |
723 | ||
89606913 JM |
724 | four sink_3_456(const volatile A&); |
725 | five sink_3_456( A&&); | |
726 | six sink_3_456(const A&&); | |
8af2fec4 RY |
727 | |
728 | int test3_456() | |
729 | { | |
730 | A a; | |
a2e70335 | 731 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 732 | volatile A va; |
a2e70335 | 733 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
734 | sink_3_456(v_source()); // { dg-error "" } |
735 | sink_3_456(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
736 | return 0; |
737 | } | |
738 | ||
89606913 JM |
739 | four sink_3_457(const volatile A&); |
740 | five sink_3_457( A&&); | |
741 | seven sink_3_457(volatile A&&); | |
8af2fec4 RY |
742 | |
743 | int test3_457() | |
744 | { | |
745 | A a; | |
a2e70335 | 746 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 747 | volatile A va; |
a2e70335 | 748 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
749 | sink_3_457(c_source()); // { dg-error "" } |
750 | sink_3_457(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
751 | return 0; |
752 | } | |
753 | ||
89606913 JM |
754 | four sink_3_467(const volatile A&); |
755 | six sink_3_467(const A&&); | |
756 | seven sink_3_467(volatile A&&); | |
8af2fec4 RY |
757 | |
758 | int test3_467() | |
759 | { | |
760 | A a; | |
a2e70335 | 761 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 762 | volatile A va; |
a2e70335 | 763 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
764 | sink_3_467(source()); // { dg-error "" } |
765 | sink_3_467(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
766 | return 0; |
767 | } | |
768 | ||
89606913 JM |
769 | five sink_3_567( A&&); |
770 | six sink_3_567(const A&&); | |
771 | seven sink_3_567(volatile A&&); | |
8af2fec4 RY |
772 | |
773 | int test3_567() | |
774 | { | |
775 | A a; | |
a2e70335 | 776 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 777 | volatile A va; |
a2e70335 | 778 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
779 | sink_3_567(a); // { dg-error "" } |
780 | sink_3_567(ca); // { dg-error "" } | |
781 | sink_3_567(va); // { dg-error "" } | |
782 | sink_3_567(cva); // { dg-error "" } | |
783 | sink_3_567(cv_source()); // { dg-error "" } | |
8af2fec4 RY |
784 | return 0; |
785 | } | |
786 | ||
89606913 JM |
787 | five sink_3_568( A&&); |
788 | six sink_3_568(const A&&); | |
789 | eight sink_3_568(const volatile A&&); | |
e7f1930f JM |
790 | |
791 | int test3_568() | |
792 | { | |
793 | A a; | |
a2e70335 | 794 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 795 | volatile A va; |
a2e70335 | 796 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
797 | sink_3_568(a); // { dg-error "" } |
798 | sink_3_568(ca); // { dg-error "" } | |
799 | sink_3_568(va); // { dg-error "" } | |
800 | sink_3_568(cva); // { dg-error "" } | |
e7f1930f JM |
801 | return 0; |
802 | } | |
803 | ||
89606913 JM |
804 | five sink_3_578( A&&); |
805 | seven sink_3_578(volatile A&&); | |
806 | eight sink_3_578(const volatile A&&); | |
e7f1930f JM |
807 | |
808 | int test3_578() | |
809 | { | |
810 | A a; | |
a2e70335 | 811 | const A ca = a; // { dg-error "deleted" } |
e7f1930f | 812 | volatile A va; |
a2e70335 | 813 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
814 | sink_3_578(a); // { dg-error "" } |
815 | sink_3_578(ca); // { dg-error "" } | |
816 | sink_3_578(va); // { dg-error "" } | |
817 | sink_3_578(cva); // { dg-error "" } | |
e7f1930f JM |
818 | return 0; |
819 | } | |
820 | ||
89606913 JM |
821 | six sink_3_678(const A&&); |
822 | seven sink_3_678(volatile A&&); | |
823 | eight sink_3_678(const volatile A&&); | |
8af2fec4 RY |
824 | |
825 | int test3_678() | |
826 | { | |
827 | A a; | |
a2e70335 | 828 | const A ca = a; // { dg-error "deleted" } |
8af2fec4 | 829 | volatile A va; |
a2e70335 | 830 | const volatile A cva = a; // { dg-error "deleted" } |
89606913 JM |
831 | sink_3_678(a); // { dg-error "" } |
832 | sink_3_678(ca); // { dg-error "" } | |
833 | sink_3_678(va); // { dg-error "" } | |
834 | sink_3_678(cva); // { dg-error "" } | |
835 | sink_3_678(source()); // { dg-error "" } | |
8af2fec4 RY |
836 | return 0; |
837 | } | |
838 | ||
839 | int main() | |
840 | { | |
841 | return test3_123() + test3_125() + test3_126() + test3_127() + | |
842 | test3_135() + test3_136() + test3_137() + test3_156() + | |
843 | test3_157() + test3_167() + test3_234() + test3_235() + | |
844 | test3_236() + test3_237() + test3_238() + test3_256() + | |
845 | test3_257() + test3_267() + test3_356() + test3_357() + | |
846 | test3_367() + test3_467() + test3_567() + test3_678(); | |
847 | } |