From 041b084f736e875a24e3a089268e8b4747ac363e Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Fri, 14 Oct 2011 15:31:12 +0000 Subject: When declaring an out-of-line template, attempt to rebuild any types within the template parameter list that may have changed now that we know the current instantiation. Fixes . llvm-svn: 141954 --- clang/test/SemaTemplate/current-instantiation.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'clang/test') diff --git a/clang/test/SemaTemplate/current-instantiation.cpp b/clang/test/SemaTemplate/current-instantiation.cpp index fe7213f1438..ccef811e222 100644 --- a/clang/test/SemaTemplate/current-instantiation.cpp +++ b/clang/test/SemaTemplate/current-instantiation.cpp @@ -215,3 +215,23 @@ namespace PR9255 { }; }; } + +namespace rdar10194295 { + template + class X { + public: + enum Enum { Yes, No }; + template void foo(); + template class Inner; + }; + + template + template::Enum> + void X::foo() + { + } + + template + template::Enum> + class X::Inner { }; +} -- cgit v1.2.3