This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rGb34b1e38381f: [Analysis] Bug fix for exploded graph
branching in evalCall for constructor (authored by vrnithinkumar).
Repository:
rG LLVM Github
NoQ accepted this revision.
NoQ added a comment.
This revision is now accepted and ready to land.
Thanks!~
Comment at: clang/test/Analysis/smart-ptr.cpp:44
std::unique_ptr P(new A());
+ clang_analyzer_numTimesReached(); // expected-warning {{1}}
P->foo(); // No warning.
vrnithinkumar marked an inline comment as done.
vrnithinkumar added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:682
anyEvaluated = true;
+Dst.clear();
Dst.insert(checkDst);
NoQ wrote:
> vrnithinkumar wro
vrnithinkumar updated this revision to Diff 285969.
vrnithinkumar added a comment.
- Make exactly single NodeBuilder exists at any given time
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85796/new/
https://reviews.llvm.org/D85796
Files:
clang/l
NoQ added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:682
anyEvaluated = true;
+Dst.clear();
Dst.insert(checkDst);
vrnithinkumar wrote:
> > runCheckersForEvalCall() already has its own builder, you don't
vrnithinkumar added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:682
anyEvaluated = true;
+Dst.clear();
Dst.insert(checkDst);
> runCheckersForEvalCall() already has its own builder, you don't need another
vrnithinkumar updated this revision to Diff 285763.
vrnithinkumar marked 3 inline comments as done.
vrnithinkumar added a comment.
- Fix without passing the NodeBuilder
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85796/new/
https://reviews.llvm.o
NoQ added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp:619
getCheckerManager().runCheckersForEvalCall(DstEvaluated, *I, *Call,
*this,
- CallOpts);
+
vrnithinkumar marked 5 inline comments as done.
vrnithinkumar added a comment.
Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp:619
getCheckerManager().runCheckersForEvalCall(DstEvaluated, *I, *Call,
*this,
- C
vrnithinkumar updated this revision to Diff 285514.
vrnithinkumar added a comment.
- Addressing review comments
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85796/new/
https://reviews.llvm.org/D85796
Files:
clang/include/clang/StaticAnalyzer/Co
NoQ added inline comments.
Comment at: clang/test/Analysis/smart-ptr-text-output.cpp:39
void derefAfterRelease() {
- std::unique_ptr P(new A());
+ std::unique_ptr P(new A()); // expected-note {{Smart pointer 'P' is
constructed}}
P.release(); // expected-note {{Smart pointe
NoQ added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp:619
getCheckerManager().runCheckersForEvalCall(DstEvaluated, *I, *Call,
*this,
- CallOpts);
+
vrnithinkumar added inline comments.
Comment at: clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp:619
getCheckerManager().runCheckersForEvalCall(DstEvaluated, *I, *Call,
*this,
- CallOpts);
+
NoQ added a comment.
Thanks!!
I'm having second thoughts on re-using the existing builder. Most other
`runCheckers...()` methods are building their own. Given how confusing this
entire node builder business is, i believe we should not deviate from known
working patterns.
Please forgive me if
vrnithinkumar created this revision.
Herald added subscribers: cfe-commits, martong.
Herald added a project: clang.
vrnithinkumar requested review of this revision.
Fixing tests
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D85796
Files:
clang/include/clang/StaticAnalyzer/Co
15 matches
Mail list logo