diff options
Diffstat (limited to 'test/Modules/template-default-args.cpp')
-rw-r--r-- | test/Modules/template-default-args.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/Modules/template-default-args.cpp b/test/Modules/template-default-args.cpp index 9d16cbf43420c..c51cb28408844 100644 --- a/test/Modules/template-default-args.cpp +++ b/test/Modules/template-default-args.cpp @@ -44,3 +44,20 @@ H<> h; // expected-error {{default argument of 'H' must be imported from module I<> i; L<> *l; END + +namespace DeferredLookup { + template<typename T, typename U = T> using X = U; + template<typename T> void f() { (void) X<T>(); } + template<typename T> int n = X<T>(); // expected-warning {{extension}} + template<typename T> struct S { X<T> xt; enum E : int; }; + template<typename T> enum S<T>::E : int { a = X<T>() }; + + void test() { + f<int>(); + n<int> = 1; + S<int> s; + S<int>::E e = S<int>::E::a; + + Indirect::B<int>::C<int> indirect; + } +} |