diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-12-01 20:32:20 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-12-01 20:32:20 +0000 |
| commit | aa49ecc4586af252e2841c2bc8f5689526da7a4b (patch) | |
| tree | 3ffbc2a7340b4a1a6537b97ec2762e6a4890a7ff /clang/test/SemaTemplate/explicit-instantiation.cpp | |
| parent | 67056b613dd84239f962dc4ef9266fd098e43d62 (diff) | |
| download | bcm5719-llvm-aa49ecc4586af252e2841c2bc8f5689526da7a4b.tar.gz bcm5719-llvm-aa49ecc4586af252e2841c2bc8f5689526da7a4b.zip | |
Not content to implement just "extern" explicit template
instantiations, GCC also supports "inline" and "static" explicit
template instantiations. Parse and warn about such constructs, but
don't implement the semantics of either "inline" or "static". They
don't seem to be widely used.
llvm-svn: 120599
Diffstat (limited to 'clang/test/SemaTemplate/explicit-instantiation.cpp')
| -rw-r--r-- | clang/test/SemaTemplate/explicit-instantiation.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/test/SemaTemplate/explicit-instantiation.cpp b/clang/test/SemaTemplate/explicit-instantiation.cpp index 3a1446e8dd6..ffec3c2b97f 100644 --- a/clang/test/SemaTemplate/explicit-instantiation.cpp +++ b/clang/test/SemaTemplate/explicit-instantiation.cpp @@ -84,6 +84,10 @@ namespace explicit_instantiation_after_implicit_instantiation { template struct X0<1>; } +template<typename> struct X3 { }; +inline template struct X3<int>; // expected-warning{{ignoring 'inline' keyword on explicit template instantiation}} +static template struct X3<float>; // expected-warning{{ignoring 'static' keyword on explicit template instantiation}} + namespace PR7622 { // expected-note{{to match this}} template<typename,typename=int> struct basic_streambuf; |

