summaryrefslogtreecommitdiff
path: root/test/Modules/Inputs/cxx-irgen-left.h
diff options
context:
space:
mode:
Diffstat (limited to 'test/Modules/Inputs/cxx-irgen-left.h')
-rw-r--r--test/Modules/Inputs/cxx-irgen-left.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/Modules/Inputs/cxx-irgen-left.h b/test/Modules/Inputs/cxx-irgen-left.h
index ceb50846bbf4e..31ae805c9a19b 100644
--- a/test/Modules/Inputs/cxx-irgen-left.h
+++ b/test/Modules/Inputs/cxx-irgen-left.h
@@ -9,3 +9,18 @@ inline int instantiate_min() {
inline int instantiate_CtorInit(CtorInit<int> i = CtorInit<int>()) {
return i.a;
}
+
+namespace ImplicitSpecialMembers {
+ inline void create_left() {
+ // Trigger declaration, but not definition, of special members.
+ B b(0); C c(0); D d(0);
+ // Trigger definition of copy constructor.
+ C c2(c); D d2(d);
+ }
+}
+
+namespace OperatorDeleteLookup {
+ // Trigger definition of A::~A() and lookup of operator delete.
+ // Likewise for B<int>::~B().
+ inline void f() { A a; B<int> b; }
+}