summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/Inputs/cxx-templates-b-impl.h
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2014-05-07 02:25:43 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2014-05-07 02:25:43 +0000
commit3d23c42029a8675f388c996fc7e7c1aff5e85f43 (patch)
tree7867dc23443f2c78d542641d80c731461d228975 /clang/test/Modules/Inputs/cxx-templates-b-impl.h
parentcf27e1b996f290c4ae186fd9060bf5b36302b3ec (diff)
downloadbcm5719-llvm-3d23c42029a8675f388c996fc7e7c1aff5e85f43.tar.gz
bcm5719-llvm-3d23c42029a8675f388c996fc7e7c1aff5e85f43.zip
If an instantiation of a template is required to be a complete type, check
whether the definition of the template is visible rather than checking whether the instantiated definition happens to be in an imported module. llvm-svn: 208150
Diffstat (limited to 'clang/test/Modules/Inputs/cxx-templates-b-impl.h')
-rw-r--r--clang/test/Modules/Inputs/cxx-templates-b-impl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/cxx-templates-b-impl.h b/clang/test/Modules/Inputs/cxx-templates-b-impl.h
index fdf4a4fbc4d..93d057433dd 100644
--- a/clang/test/Modules/Inputs/cxx-templates-b-impl.h
+++ b/clang/test/Modules/Inputs/cxx-templates-b-impl.h
@@ -3,3 +3,10 @@ struct DefinedInBImpl {
struct Inner {};
friend void FoundByADL(DefinedInBImpl);
};
+
+@import cxx_templates_common;
+template struct TemplateInstantiationVisibility<char[1]>;
+extern template struct TemplateInstantiationVisibility<char[2]>;
+template<> struct TemplateInstantiationVisibility<char[3]> {};
+extern TemplateInstantiationVisibility<char[4]>::type
+ TemplateInstantiationVisibility_ImplicitInstantiation;
OpenPOWER on IntegriCloud