diff options
Diffstat (limited to 'clang/test/Modules')
-rw-r--r-- | clang/test/Modules/Inputs/template-default-args/a.h | 4 | ||||
-rw-r--r-- | clang/test/Modules/Inputs/template-default-args/module.modulemap | 3 | ||||
-rw-r--r-- | clang/test/Modules/template-default-args.cpp | 2 |
3 files changed, 9 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/template-default-args/a.h b/clang/test/Modules/Inputs/template-default-args/a.h index a8a01a9e313..532cbc8be03 100644 --- a/clang/test/Modules/Inputs/template-default-args/a.h +++ b/clang/test/Modules/Inputs/template-default-args/a.h @@ -9,4 +9,8 @@ template<typename T = int> struct H; template<typename T> struct J {}; template<typename T = int> struct J; struct K : J<> {}; +template<typename T = void> struct L; +struct FriendL { + template<typename T> friend struct L; +}; END diff --git a/clang/test/Modules/Inputs/template-default-args/module.modulemap b/clang/test/Modules/Inputs/template-default-args/module.modulemap index d54dfc345ab..21bf40c3bcc 100644 --- a/clang/test/Modules/Inputs/template-default-args/module.modulemap +++ b/clang/test/Modules/Inputs/template-default-args/module.modulemap @@ -3,3 +3,6 @@ module X { module B { header "b.h" } module C { header "c.h" } } +module Y { + module D { header "d.h" } +} diff --git a/clang/test/Modules/template-default-args.cpp b/clang/test/Modules/template-default-args.cpp index 3a519f2d8a7..9d16cbf4342 100644 --- a/clang/test/Modules/template-default-args.cpp +++ b/clang/test/Modules/template-default-args.cpp @@ -13,6 +13,7 @@ template<typename T = int, typename U = int> struct I {}; END #include "b.h" +#include "d.h" BEGIN template<typename T = int> struct A {}; @@ -41,4 +42,5 @@ G<> g; // expected-error {{default argument of 'G' must be imported from module H<> h; // expected-error {{default argument of 'H' must be imported from module 'X.A' before it is required}} // expected-note@a.h:8 {{default argument declared here}} I<> i; +L<> *l; END |