Skip to content

Commit 2af5971

Browse files
committed
Shorten a verbose comment
1 parent abccb02 commit 2af5971

File tree

1 file changed

+4
-11
lines changed

1 file changed

+4
-11
lines changed

clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -675,17 +675,10 @@ void ExprEngine::finishArgumentConstruction(ExplodedNodeSet &Dst,
675675

676676
void ExprEngine::evalCall(ExplodedNodeSet &Dst, ExplodedNode *Pred,
677677
const CallEvent &CallTemplate) {
678-
// WARNING: As this function performs transitions between several different
679-
// states (perhaps in a branching structure) we must be careful to avoid
680-
// referencing obsolete or irrelevant states. In particular, 'CallEvent'
681-
// instances have an attached state (because this is convenient within the
682-
// checker callbacks) and it is our responsibility to keep these up-to-date.
683-
// In fact, the parameter 'CallTemplate' is a "template" because its attached
684-
// state may be older than the state of 'Pred' (which will be further
685-
// transformed by the transitions within this method).
686-
// (Note that 'runCheckersFor*Call' and 'finishArgumentConstruction' are
687-
// prepared to take this template and attach the proper state before
688-
// forwarding it to the checkers.)
678+
// NOTE: CallTemplate is called a "template" because its attached state may
679+
// be obsolete (compared to the state of Pred). The state-dependent methods
680+
// of CallEvent should be used only after a `cloneWithState` call that
681+
// attaches the up-to-date state to this template object.
689682

690683
// Run any pre-call checks using the generic call interface.
691684
ExplodedNodeSet dstPreVisit;

0 commit comments

Comments
 (0)