diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-05-07 02:25:43 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-05-07 02:25:43 +0000 |
commit | 3d23c42029a8675f388c996fc7e7c1aff5e85f43 (patch) | |
tree | 7867dc23443f2c78d542641d80c731461d228975 /clang/test/Modules/Inputs/cxx-templates-b-impl.h | |
parent | cf27e1b996f290c4ae186fd9060bf5b36302b3ec (diff) | |
download | bcm5719-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.h | 7 |
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; |