I struggled getting this patch right and I am not confident enough to submit it directly without review so here it is: Template function specialization at class scope for -fms-extensions
Example:
template <class T>
class B {
public:
template <class U>
void f(U p) { }
template <>
void f(int p) { } // <= not standard C++, Microsoft extension
};
As Doug suggested to me on the IRC chat, I created a new Decl node:
ClassScopeFunctionSpecializationDecl
This node hold a temporary CXXMethodDecl and it will use it to create
an explicit specialization during class instantiation.
This patch is necessary to parse the MSVC 2010, MFC and ATL code.
PS: I'll add serialization in a follow-up patch.
ClassScopeExplicitSpec.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
