Author: Chuanqi Xu Date: 2025-05-07T14:47:24+08:00 New Revision: 2d81994c4a41b950eed9bdee189cba9d00381b58
URL: https://github.com/llvm/llvm-project/commit/2d81994c4a41b950eed9bdee189cba9d00381b58 DIFF: https://github.com/llvm/llvm-project/commit/2d81994c4a41b950eed9bdee189cba9d00381b58.diff LOG: [NFC] Add test from issue 61125 Added: clang/test/Modules/befriend.cppm Modified: Removed: ################################################################################ diff --git a/clang/test/Modules/befriend.cppm b/clang/test/Modules/befriend.cppm new file mode 100644 index 0000000000000..3a251f1f49aee --- /dev/null +++ b/clang/test/Modules/befriend.cppm @@ -0,0 +1,41 @@ +// RUN: rm -rf %t +// RUN: mkdir %t +// RUN: split-file %s %t +// +// RUN: %clang_cc1 -std=c++20 %t/a.cppm -emit-module-interface -o %t/a.pcm +// RUN: %clang_cc1 -std=c++20 %t/b.cpp -fmodule-file=a=%t/a.pcm -emit-llvm -o /dev/null -verify + +//--- a.cppm +module; + +namespace n +{ + +template<typename> +struct a { + template<typename T> + friend void aa(a<T>); +}; + +template<typename T> +inline void aa(a<T>) { +} + +} //namespace n + +export module a; + +namespace n { + +export using n::a; +export using n::aa; + +} + +//--- b.cpp +// expected-no-diagnostics +import a; + +void b() { + aa(n::a<int>()); +} _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits