|
|
|
|
@ -1571,8 +1571,7 @@ FunctionTemplate* Parser::WalkFunctionTemplate(const clang::FunctionTemplateDecl
@@ -1571,8 +1571,7 @@ FunctionTemplate* Parser::WalkFunctionTemplate(const clang::FunctionTemplateDecl
|
|
|
|
|
if (auto MD = dyn_cast<CXXMethodDecl>(TemplatedDecl)) |
|
|
|
|
Function = WalkMethodCXX(MD); |
|
|
|
|
else |
|
|
|
|
Function = WalkFunction(TemplatedDecl, /*IsDependent=*/true, |
|
|
|
|
/*AddToNamespace=*/false); |
|
|
|
|
Function = WalkFunction(TemplatedDecl, /*AddToNamespace=*/false); |
|
|
|
|
|
|
|
|
|
FT = new FunctionTemplate(); |
|
|
|
|
HandleDeclaration(TD, FT); |
|
|
|
|
@ -3157,8 +3156,7 @@ void Parser::MarkValidity(Function* F)
@@ -3157,8 +3156,7 @@ void Parser::MarkValidity(Function* F)
|
|
|
|
|
c->getSema().getDiagnostics().setClient(existingClient, false); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F, |
|
|
|
|
bool IsDependent) |
|
|
|
|
void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F) |
|
|
|
|
{ |
|
|
|
|
using namespace clang; |
|
|
|
|
|
|
|
|
|
@ -3307,8 +3305,7 @@ void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F,
@@ -3307,8 +3305,7 @@ void Parser::WalkFunction(const clang::FunctionDecl* FD, Function* F,
|
|
|
|
|
F->qualifiedType = GetQualifiedType(FD->getType(), &FTL); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Function* Parser::WalkFunction(const clang::FunctionDecl* FD, bool IsDependent, |
|
|
|
|
bool AddToNamespace) |
|
|
|
|
Function* Parser::WalkFunction(const clang::FunctionDecl* FD, bool AddToNamespace) |
|
|
|
|
{ |
|
|
|
|
using namespace clang; |
|
|
|
|
|
|
|
|
|
@ -3328,7 +3325,7 @@ Function* Parser::WalkFunction(const clang::FunctionDecl* FD, bool IsDependent,
@@ -3328,7 +3325,7 @@ Function* Parser::WalkFunction(const clang::FunctionDecl* FD, bool IsDependent,
|
|
|
|
|
if (AddToNamespace) |
|
|
|
|
NS->Functions.push_back(F); |
|
|
|
|
|
|
|
|
|
WalkFunction(FD, F, IsDependent); |
|
|
|
|
WalkFunction(FD, F); |
|
|
|
|
|
|
|
|
|
return F; |
|
|
|
|
} |
|
|
|
|
|