forked from OSchip/llvm-project
CGDebugInfo - silence static analyzer dyn_cast<> null dereference warnings. NFCI.
The static analyzer is warning about potential null dereferences, but in these cases we should be able to use cast<> directly and if not assert will fire for us. llvm-svn: 374989
This commit is contained in:
parent
cebfddc0b5
commit
cfee2efc57
|
@ -1791,6 +1791,7 @@ CGDebugInfo::CollectTemplateParams(const TemplateParameterList *TPList,
|
|||
CGM.getContext().toCharUnitsFromBits((int64_t)fieldOffset);
|
||||
V = CGM.getCXXABI().EmitMemberDataPointer(MPT, chars);
|
||||
}
|
||||
assert(V && "Failed to find template parameter pointer");
|
||||
V = V->stripPointerCasts();
|
||||
}
|
||||
TemplateParams.push_back(DBuilder.createTemplateValueParameter(
|
||||
|
@ -3327,13 +3328,13 @@ llvm::DISubprogram *CGDebugInfo::getFunctionFwdDeclOrStub(GlobalDecl GD,
|
|||
unsigned Line = getLineNumber(Loc);
|
||||
collectFunctionDeclProps(GD, Unit, Name, LinkageName, DContext, TParamsArray,
|
||||
Flags);
|
||||
auto *FD = dyn_cast<FunctionDecl>(GD.getDecl());
|
||||
auto *FD = cast<FunctionDecl>(GD.getDecl());
|
||||
|
||||
// Build function type.
|
||||
SmallVector<QualType, 16> ArgTypes;
|
||||
if (FD)
|
||||
for (const ParmVarDecl *Parm : FD->parameters())
|
||||
ArgTypes.push_back(Parm->getType());
|
||||
|
||||
CallingConv CC = FD->getType()->castAs<FunctionType>()->getCallConv();
|
||||
QualType FnType = CGM.getContext().getFunctionType(
|
||||
FD->getReturnType(), ArgTypes, FunctionProtoType::ExtProtoInfo(CC));
|
||||
|
|
Loading…
Reference in New Issue