OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [g++.dg/] [cpp0x/] [rv3n.C] - Blame information for rev 320

Go to most recent revision | Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.