summaryrefslogtreecommitdiffstats
path: root/clang/test/CXX/special/class.dtor/p5-implicit.cpp
blob: 703be15b70cdecbe1ffb5ddcdea5553805a6c543 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// RUN: %clang_cc1 -std=c++11 %s -ast-dump | FileCheck %s

struct A { ~A() = delete; };
// CHECK-LABEL: CXXRecordDecl {{.*}} struct A
// CHECK: Destructor trivial user_declared

struct B : A {};
// CHECK-LABEL: CXXRecordDecl {{.*}} struct B
// CHECK: Destructor trivial needs_overload_resolution

struct C : B {};
// CHECK-LABEL: CXXRecordDecl {{.*}} struct C
// CHECK: Destructor trivial needs_overload_resolution

struct D { ~D(); };
struct E : D {};
union U {
  E e;
};
// CHECK-LABEL: CXXRecordDecl {{.*}} union U
// CHECK: Destructor non_trivial needs_implicit defaulted_is_deleted
OpenPOWER on IntegriCloud