aboutsummaryrefslogtreecommitdiff
path: root/clang/unittests/Format/FormatTestJava.cpp
diff options
context:
space:
mode:
authorDonĂ¡t Nagy <donat.nagy@ericsson.com>2025-10-18 18:26:39 +0200
committerGitHub <noreply@github.com>2025-10-18 18:26:39 +0200
commit6420da68972782c37c4f147409dadcb970583d9e (patch)
tree7d92b889b7abee15a409256f7449bbef9f38229c /clang/unittests/Format/FormatTestJava.cpp
parent04e8edcc6ce4fb0693fa9ece24da5f920ccf064b (diff)
downloadllvm-6420da68972782c37c4f147409dadcb970583d9e.zip
llvm-6420da68972782c37c4f147409dadcb970583d9e.tar.gz
llvm-6420da68972782c37c4f147409dadcb970583d9e.tar.bz2
[analyzer] Avoid use of `CallEvent`s with obsolete state (#160707)
The method `ExprEngine::evalCall` handles multiple state transitions and activates various checker callbacks that take a `CallEvent` parameter (among other parameters). Unfortunately some of these callbacks (EvalCall and pointer escape) were called with a `CallEvent` instance whose attached state was obsolete. This commit fixes this inconsistency by attaching the right state to the `CallEvent`s before their state becomes relevant. I found these inconsistencies as I was trying to understand this part of the source code, so I don't know about any concrete bugs that are caused by them -- but they are definitely fishy. I evaluated this change on 10+ open source projects and it did not change the set of analyzer findings.
Diffstat (limited to 'clang/unittests/Format/FormatTestJava.cpp')
0 files changed, 0 insertions, 0 deletions