p11.0x.copy.cpp revision 762bb9d0ad20320b9f97a841dce57ba5e8e48b07
1// RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s 2 3struct NonTrivial { 4 NonTrivial(const NonTrivial&); 5}; 6 7union DeletedNTVariant { // expected-note{{here}} 8 NonTrivial NT; 9 DeletedNTVariant(); 10}; 11DeletedNTVariant DVa; 12DeletedNTVariant DVb(DVa); // expected-error{{call to deleted constructor}} 13 14struct DeletedNTVariant2 { // expected-note{{here}} 15 union { 16 NonTrivial NT; 17 }; 18 DeletedNTVariant2(); 19}; 20DeletedNTVariant2 DV2a; 21DeletedNTVariant2 DV2b(DV2a); // expected-error{{call to deleted constructor}} 22 23struct NoAccess { 24 NoAccess() = default; 25private: 26 NoAccess(const NoAccess&); 27 28 friend struct HasAccess; 29}; 30 31struct HasNoAccess { // expected-note{{here}} 32 NoAccess NA; 33}; 34HasNoAccess HNAa; 35HasNoAccess HNAb(HNAa); // expected-error{{call to deleted constructor}} 36 37struct HasAccess { 38 NoAccess NA; 39}; 40 41HasAccess HAa; 42HasAccess HAb(HAa); 43 44struct NonConst { 45 NonConst(NonConst&); 46}; 47struct Ambiguity { 48 Ambiguity(const Ambiguity&); 49 Ambiguity(volatile Ambiguity&); 50}; 51 52struct IsAmbiguous { // expected-note{{here}} 53 NonConst NC; 54 Ambiguity A; 55 IsAmbiguous(); 56}; 57IsAmbiguous IAa; 58IsAmbiguous IAb(IAa); // expected-error{{call to deleted constructor}} 59 60struct Deleted { // expected-note{{here}} 61 IsAmbiguous IA; 62}; 63Deleted Da; 64Deleted Db(Da); // expected-error{{call to deleted constructor}} 65 66struct NoAccessDtor { 67private: 68 ~NoAccessDtor(); 69 friend struct HasAccessDtor; 70}; 71 72struct HasNoAccessDtor { // expected-note{{here}} 73 NoAccessDtor NAD; 74 HasNoAccessDtor(); 75 ~HasNoAccessDtor(); 76}; 77HasNoAccessDtor HNADa; 78HasNoAccessDtor HNADb(HNADa); // expected-error{{call to deleted constructor}} 79 80struct HasAccessDtor { 81 NoAccessDtor NAD; 82}; 83HasAccessDtor HADa; 84HasAccessDtor HADb(HADa); 85 86struct RValue { // expected-note{{here}} 87 int && ri = 1; 88}; 89RValue RVa; 90RValue RVb(RVa); // expected-error{{call to deleted constructor}} 91