summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/temp_class_spec_neg.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Implement C++ DR727, which permits explicit specializations at class scope.Richard Smith2018-03-161-6/+0
| | | | | | | | | 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). llvm-svn: 327705
* DR1315: a non-type template argument in a partial specialization is permittedRichard Smith2016-12-281-3/+3
| | | | | | | | | | to make reference to template parameters. This is only a partial implementation; we retain the restriction that the argument must not be type-dependent, since it's unclear how that would work given the existence of other language rules requiring an exact type match in this context, even for type-dependent cases (a question has been raised on the core reflector). llvm-svn: 290647
* [Lit Test] Updated 26 Lit tests to be C++11 compatible.Charles Li2015-11-111-2/+10
| | | | | | | Expected diagnostics have been expanded to vary by C++ dialect. RUN line has also been expanded to: default, C++98/03 and C++11. llvm-svn: 252785
* Change the diagnostics which said 'accepted as an extension' to instead sayRichard Smith2011-12-291-1/+1
| | | | | | | 'is an extension'. The former is inappropriate and confusing when building with -Werror/-pedantic-errors. llvm-svn: 147357
* When diagnosing C++ [temp.expl.spec]p3 in C++98/03 mode, downgrade theDouglas Gregor2010-09-121-1/+1
| | | | | | | | | | | error to a warning if we're in a case that would be allowed in C++0x. This "fixes" PR8084 by making Clang accept more code than GCC and (non-strict) EDG do. Also, add the missing test case for the C++0x semantics, which should have been in r113717. llvm-svn: 113718
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
* Refactor checking of the scope of explicit template specializationDouglas Gregor2009-10-071-2/+2
| | | | | | | | | declarations and explicit template instantiations, improving diagnostics and making the code usable for function template specializations (as well as class template specializations and partial specializations). llvm-svn: 83436
* Re-enable 'test/SemaTemplate/temp_class_spec_neg.cpp', after commenting out ↵Argyrios Kyrtzidis2009-07-181-5/+1
| | | | | | the cause of the crash. llvm-svn: 76337
* Disable this test for now, it has been crashing on linux for weeks.Daniel Dunbar2009-07-181-1/+5
| | | | llvm-svn: 76328
* The -disable-free hack didn't work...Daniel Dunbar2009-07-111-2/+1
| | | | llvm-svn: 75401
* Add -disable-free to this test in the hopes if having it pass on Linux for now.Daniel Dunbar2009-07-111-1/+2
| | | | llvm-svn: 75390
* When some template parameters of a class template partialDouglas Gregor2009-06-131-0/+4
| | | | | | | specialization cannot be deduced, produce a warning noting that the affected class template partial specialization will never be used. llvm-svn: 73274
* Finish implementing checking of class template partial specializationsDouglas Gregor2009-06-121-1/+10
| | | | llvm-svn: 73260
* Diagnose C++ [temp.class.spec]p9b3, where a class template partialDouglas Gregor2009-06-121-2/+5
| | | | | | | | | specialization's arguments are identical to the implicit template arguments of the primary template. Typically, this is meant to be a declaration/definition of the primary template, so we give that advice. llvm-svn: 73259
* Diagnose the incorrect use of non-type template arguments for classDouglas Gregor2009-06-121-0/+18
| | | | | | template partial specializations. llvm-svn: 73254
* Verify that the template parameters of a class template partialDouglas Gregor2009-06-121-0/+11
specialization do not have default arguments (C++ [temp.class.spec]p10). llvm-svn: 73245
OpenPOWER on IntegriCloud