================
@@ -0,0 +1,65 @@
+// RUN: rm -rf %t
+// RUN: mkdir %t
+// RUN: split-file %s %t
+
+// RUN: %clang_cc1 -std=c++20 -emit-obj -fmodules -fimplicit-module-maps 
-fmodules-cache-path=%t %t/main.cpp -o %t/main.o
+
+//--- V.h
+#ifndef V_H
+#define V_H
+
+class A {
+public:
+  constexpr A() { }
+  constexpr ~A() { }
+};
+
+template <typename T>
+class V {
+public:
+  V() = default;
+
+  constexpr V(int n, const A& a = A()) {}
+};
+
+#endif
+
+//--- inst1.h
+#include "V.h"
+
+static void inst1() {
+  V<int> v;
+}
+
+//--- inst2.h
+#include "V.h"
+
+static void inst2() {
+  V<int> v(100);
+}
+
+//--- module.modulemap
+module "M" {
----------------
dwblaikie wrote:

(not expressing any strong opinion on this patch in particular, but it'd be 
great if the pragmas were more used (but also, they're currently not perfect - 
my understanding is that `-frewrite-imports` isn't totally robust yet/needs 
some more investment) so we had more test coverage for it because it'd be 
really great if it worked well/was considered when adding new features, etc - 
and I think it'd be a more direct way to write tests than needing to use the 
extra split-file invocation, etc (like you could copy a single file/command 
line to run a modules test, instead of splitting things, having a directory of 
files to deal with/copy/whatever, etc))

https://github.com/llvm/llvm-project/pull/69076
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to