Index: clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp =================================================================== --- clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp +++ clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp @@ -837,7 +837,18 @@ State = bindReturnValue(Call, Pred->getLocationContext(), State); // And make the result node. - Bldr.generateNode(Call.getProgramPoint(), State, Pred); + static SimpleProgramPointTag PT("ExprEngine", "Conservative eval call"); + + ProgramPoint Loc = Pred->getLocation(); + if (isa(Call)) { + auto PreCallPP = Loc.getAs(); + Loc = PostImplicitCall(PreCallPP->getDecl(), PreCallPP->getLocation(), + Pred->getLocationContext(), &PT); + } else { + Loc = Call.getProgramPoint(false, &PT); + } + + Bldr.generateNode(Loc, State, Pred); } ExprEngine::CallInlinePolicy