summaryrefslogtreecommitdiff
path: root/test/SemaCXX/warn-global-constructors.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/SemaCXX/warn-global-constructors.cpp')
-rw-r--r--test/SemaCXX/warn-global-constructors.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/test/SemaCXX/warn-global-constructors.cpp b/test/SemaCXX/warn-global-constructors.cpp
index f57f0de70812..90d8558666c3 100644
--- a/test/SemaCXX/warn-global-constructors.cpp
+++ b/test/SemaCXX/warn-global-constructors.cpp
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -Wglobal-constructors %s -verify
+// RUN: %clang_cc1 -std=c++11 -fsyntax-only -Wglobal-constructors %s -verify
int opaque_int();
@@ -101,3 +101,22 @@ namespace referencemember {
int a;
A b = { a };
}
+
+namespace pr19253 {
+ struct A { ~A() = default; };
+ A a;
+
+ struct B { ~B(); };
+ struct C : B { ~C() = default; };
+ C c; // expected-warning {{global destructor}}
+
+ class D {
+ friend struct E;
+ ~D() = default;
+ };
+ struct E : D {
+ D d;
+ ~E() = default;
+ };
+ E e;
+}