elsteveogrande created this revision.
Herald added a subscriber: cfe-commits.
Repository:
rC Clang
https://reviews.llvm.org/D51580
Files:
test/Modules/Inputs/lax-base-except/a.h
test/Modules/Inputs/lax-base-except/module.modulemap
test/Modules/lax-base-except.cpp
Index: test/Modules/lax-base-except.cpp
===================================================================
--- /dev/null
+++ test/Modules/lax-base-except.cpp
@@ -0,0 +1,10 @@
+// RUN: rm -rf %t
+// RUN: %clang -c -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I
%S/Inputs/lax-base-except %s -o %t2.o
+// expected-no-diagnostics
+
+#include "a.h"
+
+class D : public A, public B {
+ public:
+ virtual ~D() override = default;
+};
Index: test/Modules/Inputs/lax-base-except/module.modulemap
===================================================================
--- /dev/null
+++ test/Modules/Inputs/lax-base-except/module.modulemap
@@ -0,0 +1,3 @@
+module a {
+ header "a.h"
+}
Index: test/Modules/Inputs/lax-base-except/a.h
===================================================================
--- /dev/null
+++ test/Modules/Inputs/lax-base-except/a.h
@@ -0,0 +1,18 @@
+class A {
+ public:
+ virtual ~A() = default;
+};
+
+class B {
+ public:
+ virtual ~B() {
+ c.func();
+ }
+
+ struct C{
+ void func() {}
+ friend B::~B();
+ };
+
+ C c;
+};
Index: test/Modules/lax-base-except.cpp
===================================================================
--- /dev/null
+++ test/Modules/lax-base-except.cpp
@@ -0,0 +1,10 @@
+// RUN: rm -rf %t
+// RUN: %clang -c -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs/lax-base-except %s -o %t2.o
+// expected-no-diagnostics
+
+#include "a.h"
+
+class D : public A, public B {
+ public:
+ virtual ~D() override = default;
+};
Index: test/Modules/Inputs/lax-base-except/module.modulemap
===================================================================
--- /dev/null
+++ test/Modules/Inputs/lax-base-except/module.modulemap
@@ -0,0 +1,3 @@
+module a {
+ header "a.h"
+}
Index: test/Modules/Inputs/lax-base-except/a.h
===================================================================
--- /dev/null
+++ test/Modules/Inputs/lax-base-except/a.h
@@ -0,0 +1,18 @@
+class A {
+ public:
+ virtual ~A() = default;
+};
+
+class B {
+ public:
+ virtual ~B() {
+ c.func();
+ }
+
+ struct C{
+ void func() {}
+ friend B::~B();
+ };
+
+ C c;
+};
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits