summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/merge-template-members.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2015-01-31 03:04:55 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2015-01-31 03:04:55 +0000
commit508954279356432f9f0a91eef6ca432892ae4b62 (patch)
tree258de21ed16e670d57c0394cd941c6e84d1e974a /clang/test/Modules/merge-template-members.cpp
parentfb8a66fbc558e3dc1f52e5fa4aac3d9ed1fef5ae (diff)
downloadbcm5719-llvm-508954279356432f9f0a91eef6ca432892ae4b62.tar.gz
bcm5719-llvm-508954279356432f9f0a91eef6ca432892ae4b62.zip
[modules] When we try to complete the redeclaration chain for a class template
specialization, pull in any lazy specializations of the class template. llvm-svn: 227668
Diffstat (limited to 'clang/test/Modules/merge-template-members.cpp')
-rw-r--r--clang/test/Modules/merge-template-members.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/Modules/merge-template-members.cpp b/clang/test/Modules/merge-template-members.cpp
new file mode 100644
index 00000000000..99696d8ad1c
--- /dev/null
+++ b/clang/test/Modules/merge-template-members.cpp
@@ -0,0 +1,10 @@
+// RUN: rm -rf %t
+// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -I%S/Inputs/merge-template-members -verify %s
+// expected-no-diagnostics
+
+template<typename> struct A { int n; };
+template<typename> struct B { typedef A<void> C; };
+template class B<int>;
+
+#include "update.h"
+B<int>::C use2;
OpenPOWER on IntegriCloud