Home | History | Annotate | Download | only in class.dtor

Lines Matching full:destructor

13 // A defaulted destructor for a class X is defined as deleted if:
16 // destructor.
19 NonTrivDtor n; // expected-note {{destructor of 'A1' is implicitly deleted because variant field 'n' has a non-trivial destructor}}
25 NonTrivDtor n; // expected-note {{because variant field 'n' has a non-trivial destructor}}
31 NonTrivDtor n[3]; // expected-note {{because variant field 'n' has a non-trivial destructor}}
37 NonTrivDtor n[3]; // expected-note {{because variant field 'n' has a non-trivial destructor}}
43 // M has a deleted or inaccessible destructor.
46 DeletedDtor a; // expected-note {{because field 'a' has a deleted destructor}}
51 InaccessibleDtor a; // expected-note {{because field 'a' has an inaccessible destructor}}
56 DeletedDtor a[4]; // expected-note {{because field 'a' has a deleted destructor}}
61 InaccessibleDtor a[4]; // expected-note {{because field 'a' has an inaccessible destructor}}
67 union { // expected-note {{because field '' has a deleted destructor}}
68 DeletedDtor a; // expected-note {{because field 'a' has a deleted destructor}}
74 union { // expected-note {{because field '' has a deleted destructor}}
75 InaccessibleDtor a; // expected-note {{because field 'a' has an inaccessible destructor}}
80 // -- any direct or virtual base class has a deleted or inaccessible destructor.
81 struct C1 : DeletedDtor { C1(); } c1; // expected-error {{deleted function}} expected-note {{base class 'DeletedDtor' has a deleted destructor}}
82 struct C2 : InaccessibleDtor { C2(); } c2; // expected-error {{deleted function}} expected-note {{base class 'InaccessibleDtor' has an inaccessible destructor}}
83 struct C3 : virtual DeletedDtor { C3(); } c3; // expected-error {{deleted function}} expected-note {{base class 'DeletedDtor' has a deleted destructor}}
84 struct C4 : virtual InaccessibleDtor { C4(); } c4; // expected-error {{deleted function}} expected-note {{base class 'InaccessibleDtor' has an inaccessible destructor}}
86 // -- for a virtual destructor, lookup of the non-array deallocation function
93 struct D2 : D1 { // expected-note {{virtual destructor requires an unambiguous, accessible 'operator delete'}} \
95 // implicitly-virtual destructor
97 struct D3 { // expected-note {{virtual destructor requires an unambiguous, accessible 'operator delete'}}
102 struct D4 { // expected-note {{virtual destructor requires an unambiguous, accessible 'operator delete'}}