This revision was automatically updated to reflect the committed changes.
Closed by commit rC349190: [analyzer] MoveChecker: Improve invalidation
policies. (authored by dergachev, committed by ).
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55289/new/
https://rev
a_sidorin accepted this revision.
a_sidorin added a comment.
This revision is now accepted and ready to land.
LG!
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55289/new/
https://reviews.llvm.org/D55289
___
cfe-commits mailing list
cfe-comm
NoQ updated this revision to Diff 177047.
NoQ added a comment.
Fxd :)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55289/new/
https://reviews.llvm.org/D55289
Files:
lib/StaticAnalyzer/Checkers/MoveChecker.cpp
test/Analysis/use-after-move.cpp
Index: test/Analysis/use-after-move.cp
Szelethus marked an inline comment as done.
Szelethus added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:528
ArrayRef ExplicitRegions,
ArrayRef Regions, const LocationContext *LCtx,
const CallEvent *Call) const {
NoQ wro
NoQ marked an inline comment as done.
NoQ added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:540-542
+// Explicit regions are the regions passed into the call directly, but
+// not all of them end up being invalidated. The ones that do appear i
NoQ added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:528
ArrayRef ExplicitRegions,
ArrayRef Regions, const LocationContext *LCtx,
const CallEvent *Call) const {
Szelethus wrote:
> This isn't specific to this revision,
NoQ updated this revision to Diff 176877.
NoQ marked 5 inline comments as done.
NoQ added a comment.
Address comments :)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55289/new/
https://reviews.llvm.org/D55289
Files:
lib/StaticAnalyzer/Checkers/MoveChecker.cpp
test/Analysis/use-aft
NoQ added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:540-542
+// Explicit regions are the regions passed into the call directly, but
+// not all of them end up being invalidated. The ones that do appear in
+// the Regions array as well.
-
Szelethus added a comment.
Cool!
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:528
ArrayRef ExplicitRegions,
ArrayRef Regions, const LocationContext *LCtx,
const CallEvent *Call) const {
This isn't specific to this revision, but I find
a_sidorin added a comment.
Hi Artem,
The change looks fine, just some nits.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:537
+const MemRegion *ThisRegion = nullptr;
+if (const auto *IC = dyn_cast_or_null(Call))
+ ThisRegion = IC->getCXXThisVal().getAsReg
NoQ added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/MoveChecker.cpp:545
+ if (ThisRegion != Region)
+if (std::find(Regions.begin(), Regions.end(), Region) != Regions.end())
+ State = removeFromState(State, Region);
This is clu
NoQ created this revision.
NoQ added reviewers: dcoughlin, xazax.hun, a_sidorin, george.karpenkov, szepet,
rnkovacs, Szelethus.
Herald added subscribers: cfe-commits, dkrupp, donat.nagy, mikhail.ramalho,
a.sidorin, baloghadamsoftware.
If a moved-from object is passed into a conservatively evalua
12 matches
Mail list logo