summaryrefslogtreecommitdiff
path: root/test/SemaTemplate/function-template-specialization.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2018-03-16 13:36:56 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2018-03-16 13:36:56 +0000
commit68e1ba46fe5a41c099c01869ebc7a5f5bf58b73e (patch)
treee3e38bf975ea90fa136d036db2abba0c632650ae /test/SemaTemplate/function-template-specialization.cpp
parent290cc27fe21bfce479d30a3194a20045b90afb0e (diff)
downloadclang-68e1ba46fe5a41c099c01869ebc7a5f5bf58b73e.tar.gz
Implement C++ DR727, which permits explicit specializations at class scope.
More generally, this permits a template to be specialized in any scope in which it could be defined, so this also supersedes DR44 and DR374 (the latter of which we previously only implemented in C++11 mode onwards due to unclarity as to whether it was a DR). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@327705 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaTemplate/function-template-specialization.cpp')
-rw-r--r--test/SemaTemplate/function-template-specialization.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/test/SemaTemplate/function-template-specialization.cpp b/test/SemaTemplate/function-template-specialization.cpp
index 6327ff64c3..a3669fd7fd 100644
--- a/test/SemaTemplate/function-template-specialization.cpp
+++ b/test/SemaTemplate/function-template-specialization.cpp
@@ -54,5 +54,5 @@ class Foo {
// Don't crash here.
template<>
- static void Bar(const long& input) {} // expected-error{{explicit specialization of 'Bar' in class scope}}
+ static void Bar(const long& input) {} // expected-warning{{explicit specialization cannot have a storage class}}
};