Browse Source

Make the parsing of function codegen info a bit more robust.

pull/47/merge
triton 13 years ago
parent
commit
92243be28f
  1. 7
      src/Parser/Parser.cpp

7
src/Parser/Parser.cpp

@ -1604,7 +1604,12 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F, @@ -1604,7 +1604,12 @@ void Parser::WalkFunction(clang::FunctionDecl* FD, CppSharp::AST::Function^ F,
ParamStartLoc = VD->getLocEnd();
}
if (FD->isThisDeclarationADefinition() && !FD->isDependentContext())
bool CheckCodeGenInfo = !FD->isDependentContext();
if (auto RT = FD->getResultType()->getAs<RecordType>())
if (auto RD = RT->getAsCXXRecordDecl())
CheckCodeGenInfo &= RD->hasDefinition();
if (CheckCodeGenInfo)
{
auto& CGInfo = GetCodeGenFuntionInfo(CodeGenTypes, FD);
F->IsReturnIndirect = CGInfo.getReturnInfo().isIndirect();

Loading…
Cancel
Save