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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.dg/] [cpp0x/] [rv2p.C] - Blame information for rev 338

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
// 2 at a time
32
 
33
one   sink_2_12(               A&);
34
two   sink_2_12(const          A&);
35
 
36
int test2_12()
37
{
38
                   A a;
39
    const          A ca = a;
40
          volatile A va;
41
    const volatile A cva = a;
42
    sa t1;
43
    sa t2;
44
    sa t5;
45
    sa t6;
46
    return 0;
47
}
48
 
49
one   sink_2_13(               A&);
50
three sink_2_13(volatile       A&);
51
 
52
int test2_13()
53
{
54
                   A a;
55
    const          A ca = a;
56
          volatile A va;
57
    const volatile A cva = a;
58
    sa t1;
59
    sa t3;
60
    return 0;
61
}
62
 
63
one   sink_2_14(               A&);
64
four  sink_2_14(const volatile A&);
65
 
66
int test2_14()
67
{
68
                   A a;
69
    const          A ca = a;
70
          volatile A va;
71
    const volatile A cva = a;
72
    sa t1;
73
    sa t2;
74
    sa t3;
75
    sa t4;
76
    return 0;
77
}
78
 
79
one   sink_2_15(               A&);
80
five  sink_2_15(               A&&);
81
 
82
int test2_15()
83
{
84
                   A a;
85
    const          A ca = a;
86
          volatile A va;
87
    const volatile A cva = a;
88
    sa t1;
89
    sa t5;
90
    return 0;
91
}
92
 
93
one   sink_2_16(               A&);
94
six   sink_2_16(const          A&&);
95
 
96
int test2_16()
97
{
98
                   A a;
99
    const          A ca = a;
100
          volatile A va;
101
    const volatile A cva = a;
102
    sa t1;
103
    sa t5;
104
    sa t6;
105
    return 0;
106
}
107
 
108
one   sink_2_17(               A&);
109
seven sink_2_17(volatile       A&&);
110
 
111
int test2_17()
112
{
113
                   A a;
114
    const          A ca = a;
115
          volatile A va;
116
    const volatile A cva = a;
117
    sa t1;
118
    sa t5;
119
    sa t7;
120
    return 0;
121
}
122
 
123
one   sink_2_18(               A&);
124
eight sink_2_18(const volatile A&&);
125
 
126
int test2_18()
127
{
128
                   A a;
129
    const          A ca = a;
130
          volatile A va;
131
    const volatile A cva = a;
132
    sa t1;
133
    sa t5;
134
    sa t6;
135
    sa t7;
136
    sa t8;
137
    return 0;
138
}
139
 
140
two   sink_2_23(const          A&);
141
three sink_2_23(volatile       A&);
142
 
143
int test2_23()
144
{
145
                   A a;
146
    const          A ca = a;
147
          volatile A va;
148
    const volatile A cva = a;
149
    sa t2;
150
    sa t3;
151
    sa t5;
152
    sa t6;
153
    return 0;
154
}
155
 
156
two   sink_2_24(const          A&);
157
four  sink_2_24(const volatile A&);
158
 
159
int test2_24()
160
{
161
                   A a;
162
    const          A ca = a;
163
          volatile A va;
164
    const volatile A cva = a;
165
    sa t1;
166
    sa t2;
167
    sa t3;
168
    sa t4;
169
    sa t5;
170
    sa t6;
171
//    sa t7;
172
//    sa t8;
173
    return 0;
174
}
175
 
176
two   sink_2_25(const          A&);
177
five  sink_2_25(               A&&);
178
 
179
int test2_25()
180
{
181
                   A a;
182
    const          A ca = a;
183
          volatile A va;
184
    const volatile A cva = a;
185
    sa t1;
186
    sa t2;
187
    sa t5;
188
    sa t6;
189
    return 0;
190
}
191
 
192
two   sink_2_26(const          A&);
193
six   sink_2_26(const          A&&);
194
 
195
int test2_26()
196
{
197
                   A a;
198
    const          A ca = a;
199
          volatile A va;
200
    const volatile A cva = a;
201
    sa t1;
202
    sa t2;
203
    sa t5;
204
    sa t6;
205
    return 0;
206
}
207
 
208
two   sink_2_27(const          A&);
209
seven sink_2_27(volatile       A&&);
210
 
211
int test2_27()
212
{
213
                   A a;
214
    const          A ca = a;
215
          volatile A va;
216
    const volatile A cva = a;
217
    sa t1;
218
    sa t2;
219
    sa t5;
220
    sa t6;
221
    sa t7;
222
    return 0;
223
}
224
 
225
two   sink_2_28(const          A&);
226
eight sink_2_28(const volatile A&&);
227
 
228
int test2_28()
229
{
230
                   A a;
231
    const          A ca = a;
232
          volatile A va;
233
    const volatile A cva = a;
234
    sa t1;
235
    sa t2;
236
    sa t5;
237
    sa t6;
238
    sa t7;
239
    sa t8;
240
    return 0;
241
}
242
 
243
three sink_2_34(volatile       A&);
244
four  sink_2_34(const volatile A&);
245
 
246
int test2_34()
247
{
248
                   A a;
249
    const          A ca = a;
250
          volatile A va;
251
    const volatile A cva = a;
252
    sa t1;
253
    sa t2;
254
    sa t3;
255
    sa t4;
256
//    sa t5;
257
//    sa t6;
258
//    sa t7;
259
//    sa t8;
260
    return 0;
261
}
262
 
263
three sink_2_35(volatile       A&);
264
five  sink_2_35(               A&&);
265
 
266
int test2_35()
267
{
268
                   A a;
269
    const          A ca = a;
270
          volatile A va;
271
    const volatile A cva = a;
272
    sa t1;
273
    sa t3;
274
    sa t5;
275
    return 0;
276
}
277
 
278
three sink_2_36(volatile       A&);
279
six   sink_2_36(const          A&&);
280
 
281
int test2_36()
282
{
283
                   A a;
284
    const          A ca = a;
285
          volatile A va;
286
    const volatile A cva = a;
287
    sa t1;
288
    sa t3;
289
    sa t5;
290
    sa t6;
291
    return 0;
292
}
293
 
294
three sink_2_37(volatile       A&);
295
seven sink_2_37(volatile       A&&);
296
 
297
int test2_37()
298
{
299
                   A a;
300
    const          A ca = a;
301
          volatile A va;
302
    const volatile A cva = a;
303
    sa t1;
304
    sa t3;
305
    sa t5;
306
    sa t7;
307
    return 0;
308
}
309
 
310
three sink_2_38(volatile       A&);
311
eight sink_2_38(const volatile A&&);
312
 
313
int test2_38()
314
{
315
                   A a;
316
    const          A ca = a;
317
          volatile A va;
318
    const volatile A cva = a;
319
    sa t1;
320
    sa t3;
321
    sa t5;
322
    sa t6;
323
    sa t7;
324
    sa t8;
325
    return 0;
326
}
327
 
328
four  sink_2_45(const volatile A&);
329
five  sink_2_45(               A&&);
330
 
331
int test2_45()
332
{
333
                   A a;
334
    const          A ca = a;
335
          volatile A va;
336
    const volatile A cva = a;
337
    sa t1;
338
    sa t2;
339
    sa t3;
340
    sa t4;
341
    sa t5;
342
//    sa t6;
343
//    sa t7;
344
//    sa t8;
345
    return 0;
346
}
347
 
348
four  sink_2_46(const volatile A&);
349
six   sink_2_46(const          A&&);
350
 
351
int test2_46()
352
{
353
                   A a;
354
    const          A ca = a;
355
          volatile A va;
356
    const volatile A cva = a;
357
    sa t1;
358
    sa t2;
359
    sa t3;
360
    sa t4;
361
    sa t5;
362
    sa t6;
363
//    sa t7;
364
//    sa t8;
365
    return 0;
366
}
367
 
368
four  sink_2_47(const volatile A&);
369
seven sink_2_47(volatile       A&&);
370
 
371
int test2_47()
372
{
373
                   A a;
374
    const          A ca = a;
375
          volatile A va;
376
    const volatile A cva = a;
377
    sa t1;
378
    sa t2;
379
    sa t3;
380
    sa t4;
381
    sa t5;
382
//    sa t6;
383
    sa t7;
384
//    sa t8;
385
    return 0;
386
}
387
 
388
four  sink_2_48(const volatile A&);
389
eight sink_2_48(const volatile A&&);
390
 
391
int test2_48()
392
{
393
                   A a;
394
    const          A ca = a;
395
          volatile A va;
396
    const volatile A cva = a;
397
    sa t1;
398
    sa t2;
399
    sa t3;
400
    sa t4;
401
    sa t5;
402
    sa t6;
403
    sa t7;
404
    sa t8;
405
    return 0;
406
}
407
 
408
five  sink_2_56(               A&&);
409
six   sink_2_56(const          A&&);
410
 
411
int test2_56()
412
{
413
                   A a;
414
    const          A ca = a;
415
          volatile A va;
416
    const volatile A cva = a;
417
    sa t5;
418
    sa t6;
419
    return 0;
420
}
421
 
422
five  sink_2_57(               A&&);
423
seven sink_2_57(volatile       A&&);
424
 
425
int test2_57()
426
{
427
                   A a;
428
    const          A ca = a;
429
          volatile A va;
430
    const volatile A cva = a;
431
    sa t5;
432
    sa t7;
433
    return 0;
434
}
435
 
436
five  sink_2_58(               A&&);
437
eight sink_2_58(const volatile A&&);
438
 
439
int test2_58()
440
{
441
                   A a;
442
    const          A ca = a;
443
          volatile A va;
444
    const volatile A cva = a;
445
    sa t5;
446
    sa t6;
447
    sa t7;
448
    sa t8;
449
    return 0;
450
}
451
 
452
six   sink_2_67(const          A&&);
453
seven sink_2_67(volatile       A&&);
454
 
455
int test2_67()
456
{
457
                   A a;
458
    const          A ca = a;
459
          volatile A va;
460
    const volatile A cva = a;
461
    sa t6;
462
    sa t7;
463
    return 0;
464
}
465
 
466
six   sink_2_68(const          A&&);
467
eight sink_2_68(const volatile A&&);
468
 
469
int test2_68()
470
{
471
                   A a;
472
    const          A ca = a;
473
          volatile A va;
474
    const volatile A cva = a;
475
    sa t5;
476
    sa t6;
477
    sa t7;
478
    sa t8;
479
    return 0;
480
}
481
 
482
seven sink_2_78(volatile       A&&);
483
eight sink_2_78(const volatile A&&);
484
 
485
int test2_78()
486
{
487
                   A a;
488
    const          A ca = a;
489
          volatile A va;
490
    const volatile A cva = a;
491
    sa t5;
492
    sa t6;
493
    sa t7;
494
    sa t8;
495
    return 0;
496
}
497
 
498
int main()
499
{
500
    return test2_12() + test2_13() + test2_14() + test2_15() +
501
           test2_16() + test2_17() + test2_18() + test2_23() +
502
           test2_24() + test2_25() + test2_26() + test2_27() +
503
           test2_28() + test2_34() + test2_35() + test2_36() +
504
           test2_37() + test2_38() + test2_45() + test2_46() +
505
           test2_47() + test2_48() + test2_56() + test2_57() +
506
           test2_58() + test2_67() + test2_68() + test2_78();
507
}

powered by: WebSVN 2.1.0

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