ChuanqiXu added a comment.
When I run this locally, it emits several unexpected errors:
While building module 'library':
In file included from <module-includes>:2:
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var2.h:4:32:
error: redefinition of 'zero'
template <class T> constexpr T zero = 0;
^
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var1.h:4:32:
note: previous definition is here
template <class T> constexpr T zero = 0;
^
While building module 'library':
In file included from <module-includes>:2:
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var2.h:5:8:
error: redefinition of 'Int'
struct Int {
^
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var1.h:5:8:
note: previous definition is here
struct Int {
^
While building module 'library':
In file included from <module-includes>:2:
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var2.h:8:27:
error: redefinition of 'zero<Int>'
template <> constexpr int zero<Int> = {0};
^
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var1.h:8:27:
note: previous definition is here
template <> constexpr int zero<Int> = {0};
^
While building module 'library':
In file included from <module-includes>:2:
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var2.h:9:33:
error: redefinition of 'zero<T *>'
template <class T> constexpr T* zero<T*> = nullptr;
^
/disk2/workspace.xuchuanqi/llvm-project-for-work/build/tools/clang/test/Modules/Output/merge-var-template-spec.cpp.tmp/var1.h:9:33:
note: previous definition is here
template <class T> constexpr T* zero<T*> = nullptr;
^
4 errors generated.
================
Comment at: clang/test/Modules/merge-var-template-spec-cxx-modules.cpp:1
+// RUN: rm -rf %t
+// RUN: mkdir %t
----------------
Maybe it is better to rename this as `merge-var-template-spec.cppm` since we
uses the suffix `.cppm` as a note for c++20 modules.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131258/new/
https://reviews.llvm.org/D131258
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits