[clang] [Analyzer][NFC] Remove redundant function call (PR #75076)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Dec 11 09:37:34 PST 2023
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang-static-analyzer-1
Author: Gábor Spaits (spaits)
<details>
<summary>Changes</summary>
`PRValueHandler`'s handle function is only called from Tracker's track function. In `Tracker::track` the
`ExprNode` parameter passed to `PRValueHandler::handle` is already the `ExplodedNode` for the tracked expression. We do not need to calculate that again.
---
Full diff: https://github.com/llvm/llvm-project/pull/75076.diff
1 Files Affected:
- (modified) clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp (+4-8)
``````````diff
diff --git a/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp b/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
index 4a9d130c240aec..4a1607530dbd82 100644
--- a/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
+++ b/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
@@ -2565,21 +2565,17 @@ class PRValueHandler final : public ExpressionHandler {
using ExpressionHandler::ExpressionHandler;
Tracker::Result handle(const Expr *E, const ExplodedNode *InputNode,
- const ExplodedNode *ExprNode,
+ const ExplodedNode *RVNode,
TrackingOptions Opts) override {
- if (!E->isPRValue())
- return {};
-
- const ExplodedNode *RVNode = findNodeForExpression(ExprNode, E);
- if (!RVNode)
+ if (!E->isPRValue() || !RVNode)
return {};
Tracker::Result CombinedResult;
Tracker &Parent = getParentTracker();
- const auto track = [&CombinedResult, &Parent, ExprNode,
+ const auto track = [&CombinedResult, &Parent, RVNode,
Opts](const Expr *Inner) {
- CombinedResult.combineWith(Parent.track(Inner, ExprNode, Opts));
+ CombinedResult.combineWith(Parent.track(Inner, RVNode, Opts));
};
// FIXME: Initializer lists can appear in many different contexts
``````````
</details>
https://github.com/llvm/llvm-project/pull/75076
More information about the cfe-commits
mailing list