⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rv4p.c

📁 用于进行gcc测试
💻 C
📖 第 1 页 / 共 4 页
字号:
// I, Howard Hinnant, hereby place this code in the public domain.// Test overlaod resolution among referece types// { dg-do compile }// { dg-options "-std=c++0x" }template <bool> struct sa;template <> struct sa<true> {};struct one   {char x[1];};struct two   {char x[2];};struct three {char x[3];};struct four  {char x[4];};struct five  {char x[5];};struct six   {char x[6];};struct seven {char x[7];};struct eight {char x[8];};struct A{    A();    A(const volatile A&&);};               A    source();const          A  c_source();      volatile A  v_source();const volatile A cv_source();// 4 at a timeone   sink_4_1234(               A&);two   sink_4_1234(const          A&);three sink_4_1234(volatile       A&);four  sink_4_1234(const volatile A&);int test4_1234(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1234(a))           == 1> t1;    sa<sizeof(sink_4_1234(ca))          == 2> t2;    sa<sizeof(sink_4_1234(va))          == 3> t3;    sa<sizeof(sink_4_1234(cva))         == 4> t4;    sa<sizeof(sink_4_1234(source()))    == 2> t5;    sa<sizeof(sink_4_1234(c_source()))  == 2> t6;    return 0;}one   sink_4_1235(               A&);two   sink_4_1235(const          A&);three sink_4_1235(volatile       A&);five  sink_4_1235(               A&&);int test4_1235(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1235(a))           == 1> t1;    sa<sizeof(sink_4_1235(ca))          == 2> t2;    sa<sizeof(sink_4_1235(va))          == 3> t3;    sa<sizeof(sink_4_1235(source()))    == 5> t5;    sa<sizeof(sink_4_1235(c_source()))  == 2> t6;    return 0;}one   sink_4_1236(               A&);two   sink_4_1236(const          A&);three sink_4_1236(volatile       A&);six   sink_4_1236(const          A&&);int test4_1236(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1236(a))           == 1> t1;    sa<sizeof(sink_4_1236(ca))          == 2> t2;    sa<sizeof(sink_4_1236(va))          == 3> t3;    sa<sizeof(sink_4_1236(source()))    == 6> t5;    sa<sizeof(sink_4_1236(c_source()))  == 6> t6;    return 0;}one   sink_4_1237(               A&);two   sink_4_1237(const          A&);three sink_4_1237(volatile       A&);seven sink_4_1237(volatile       A&&);int test4_1237(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1237(a))           == 1> t1;    sa<sizeof(sink_4_1237(ca))          == 2> t2;    sa<sizeof(sink_4_1237(va))          == 3> t3;    sa<sizeof(sink_4_1237(source()))    == 7> t5;    sa<sizeof(sink_4_1237(c_source()))  == 2> t6;    sa<sizeof(sink_4_1237(v_source()))  == 7> t7;    return 0;}one   sink_4_1238(               A&);two   sink_4_1238(const          A&);three sink_4_1238(volatile       A&);eight sink_4_1238(const volatile A&&);int test4_1238(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1238(a))           == 1> t1;    sa<sizeof(sink_4_1238(ca))          == 2> t2;    sa<sizeof(sink_4_1238(va))          == 3> t3;    sa<sizeof(sink_4_1238(cva))         == 8> t4;    sa<sizeof(sink_4_1238(source()))    == 8> t5;    sa<sizeof(sink_4_1238(c_source()))  == 8> t6;    sa<sizeof(sink_4_1238(v_source()))  == 8> t7;    sa<sizeof(sink_4_1238(cv_source())) == 8> t8;    return 0;}one   sink_4_1245(               A&);two   sink_4_1245(const          A&);four  sink_4_1245(const volatile A&);five  sink_4_1245(               A&&);int test4_1245(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1245(a))           == 1> t1;    sa<sizeof(sink_4_1245(ca))          == 2> t2;    sa<sizeof(sink_4_1245(va))          == 4> t3;    sa<sizeof(sink_4_1245(cva))         == 4> t4;    sa<sizeof(sink_4_1245(source()))    == 5> t5;    sa<sizeof(sink_4_1245(c_source()))  == 2> t6;    return 0;}one   sink_4_1246(               A&);two   sink_4_1246(const          A&);four  sink_4_1246(const volatile A&);six   sink_4_1246(const          A&&);int test4_1246(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1246(a))           == 1> t1;    sa<sizeof(sink_4_1246(ca))          == 2> t2;    sa<sizeof(sink_4_1246(va))          == 4> t3;    sa<sizeof(sink_4_1246(cva))         == 4> t4;    sa<sizeof(sink_4_1246(source()))    == 6> t5;    sa<sizeof(sink_4_1246(c_source()))  == 6> t6;    return 0;}one   sink_4_1247(               A&);two   sink_4_1247(const          A&);four  sink_4_1247(const volatile A&);seven sink_4_1247(volatile       A&&);int test4_1247(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1247(a))           == 1> t1;    sa<sizeof(sink_4_1247(ca))          == 2> t2;    sa<sizeof(sink_4_1247(va))          == 4> t3;    sa<sizeof(sink_4_1247(cva))         == 4> t4;    sa<sizeof(sink_4_1247(source()))    == 7> t5;    sa<sizeof(sink_4_1247(c_source()))  == 2> t6;    sa<sizeof(sink_4_1247(v_source()))  == 7> t7;    return 0;}one   sink_4_1248(               A&);two   sink_4_1248(const          A&);four  sink_4_1248(const volatile A&);eight sink_4_1248(const volatile A&&);int test4_1248(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1248(a))           == 1> t1;    sa<sizeof(sink_4_1248(ca))          == 2> t2;    sa<sizeof(sink_4_1248(va))          == 4> t3;    sa<sizeof(sink_4_1248(cva))         == 4> t4;    sa<sizeof(sink_4_1248(source()))    == 8> t5;    sa<sizeof(sink_4_1248(c_source()))  == 8> t6;    sa<sizeof(sink_4_1248(v_source()))  == 8> t7;    sa<sizeof(sink_4_1248(cv_source())) == 8> t8;    return 0;}one   sink_4_1256(               A&);two   sink_4_1256(const          A&);five  sink_4_1256(               A&&);six   sink_4_1256(const          A&&);int test4_1256(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1256(a))           == 1> t1;    sa<sizeof(sink_4_1256(ca))          == 2> t2;    sa<sizeof(sink_4_1256(source()))    == 5> t5;    sa<sizeof(sink_4_1256(c_source()))  == 6> t6;    return 0;}one   sink_4_1257(               A&);two   sink_4_1257(const          A&);five  sink_4_1257(               A&&);seven sink_4_1257(volatile       A&&);int test4_1257(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1257(a))           == 1> t1;    sa<sizeof(sink_4_1257(ca))          == 2> t2;    sa<sizeof(sink_4_1257(va))          == 7> t3;    sa<sizeof(sink_4_1257(source()))    == 5> t5;    sa<sizeof(sink_4_1257(c_source()))  == 2> t6;    sa<sizeof(sink_4_1257(v_source()))  == 7> t7;    return 0;}one   sink_4_1258(               A&);two   sink_4_1258(const          A&);five  sink_4_1258(               A&&);eight sink_4_1258(const volatile A&&);int test4_1258(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1258(a))           == 1> t1;    sa<sizeof(sink_4_1258(ca))          == 2> t2;    sa<sizeof(sink_4_1258(va))          == 8> t3;    sa<sizeof(sink_4_1258(cva))         == 8> t4;    sa<sizeof(sink_4_1258(source()))    == 5> t5;    sa<sizeof(sink_4_1258(c_source()))  == 8> t6;    sa<sizeof(sink_4_1258(v_source()))  == 8> t7;    sa<sizeof(sink_4_1258(cv_source())) == 8> t8;    return 0;}one   sink_4_1267(               A&);two   sink_4_1267(const          A&);six   sink_4_1267(const          A&&);seven sink_4_1267(volatile       A&&);int test4_1267(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1267(a))           == 1> t1;    sa<sizeof(sink_4_1267(ca))          == 2> t2;    sa<sizeof(sink_4_1267(va))          == 7> t3;    sa<sizeof(sink_4_1267(c_source()))  == 6> t6;    sa<sizeof(sink_4_1267(v_source()))  == 7> t7;    return 0;}one   sink_4_1268(               A&);two   sink_4_1268(const          A&);six   sink_4_1268(const          A&&);eight sink_4_1268(const volatile A&&);int test4_1268(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1268(a))           == 1> t1;    sa<sizeof(sink_4_1268(ca))          == 2> t2;    sa<sizeof(sink_4_1268(va))          == 8> t3;    sa<sizeof(sink_4_1268(cva))         == 8> t4;    sa<sizeof(sink_4_1268(source()))    == 6> t5;    sa<sizeof(sink_4_1268(c_source()))  == 6> t6;    sa<sizeof(sink_4_1268(v_source()))  == 8> t7;    sa<sizeof(sink_4_1268(cv_source())) == 8> t8;    return 0;}one   sink_4_1278(               A&);two   sink_4_1278(const          A&);seven sink_4_1278(volatile       A&&);eight sink_4_1278(const volatile A&&);int test4_1278(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1278(a))           == 1> t1;    sa<sizeof(sink_4_1278(ca))          == 2> t2;    sa<sizeof(sink_4_1278(va))          == 7> t3;    sa<sizeof(sink_4_1278(cva))         == 8> t4;    sa<sizeof(sink_4_1278(source()))    == 7> t5;    sa<sizeof(sink_4_1278(c_source()))  == 8> t6;    sa<sizeof(sink_4_1278(v_source()))  == 7> t7;    sa<sizeof(sink_4_1278(cv_source())) == 8> t8;    return 0;}one   sink_4_1345(               A&);three sink_4_1345(volatile       A&);four  sink_4_1345(const volatile A&);five  sink_4_1345(               A&&);int test4_1345(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1345(a))           == 1> t1;    sa<sizeof(sink_4_1345(ca))          == 4> t2;    sa<sizeof(sink_4_1345(va))          == 3> t3;    sa<sizeof(sink_4_1345(cva))         == 4> t4;    sa<sizeof(sink_4_1345(source()))    == 5> t5;    return 0;}one   sink_4_1346(               A&);three sink_4_1346(volatile       A&);four  sink_4_1346(const volatile A&);six   sink_4_1346(const          A&&);int test4_1346(){                   A a;    const          A ca = a;          volatile A va;    const volatile A cva = a;    sa<sizeof(sink_4_1346(a))           == 1> t1;    sa<sizeof(sink_4_1346(ca))          == 4> t2;    sa<sizeof(sink_4_1346(va))          == 3> t3;    sa<sizeof(sink_4_1346(cva))         == 4> t4;    sa<sizeof(sink_4_1346(source()))    == 6> t5;    sa<sizeof(sink_4_1346(c_source()))  == 6> t6;    return 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -