summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Properly reenter multiple contexts when parsing a late-parsed function templateRichard Smith2013-04-291-0/+1
| | | | | | within a dependent context. Patch by Will Wilson (+clang-format)! llvm-svn: 180702
* Make explicit specializations at class scope workNico Weber2012-06-251-0/+21
| | | | | | | for non-type template parameters in microsoft mode. PR12709. llvm-svn: 159147
* fix typo in test.Francois Pichet2011-08-141-4/+4
| | | | llvm-svn: 137592
* Implement function template specialization at class scope extension in ↵Francois Pichet2011-08-141-0/+71
Microsoft mode. A new AST node is introduced: ClassScopeFunctionSpecialization. This node holds a FunctionDecl that is not yet specialized; then during the class template instantiation the ClassScopeFunctionSpecialization will spawn the actual function specialization. Example: template <class T> class A { public: template <class U> void f(U p) { } template <> void f(int p) { } // <== class scope specialization }; This extension is necessary to parse MSVC standard C++ headers, MFC and ATL code. BTW, with this feature in, clang can parse (-fsyntax-only) all the MSVC 2010 standard header files without any error. llvm-svn: 137573
OpenPOWER on IntegriCloud