szepet added inline comments.
================ Comment at: lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp:426 + + State = State->remove<TrackedRegionMap>(WholeObjectRegion); C.addTransition(State); ---------------- szepet wrote: > I am wondering if I made a mistake but I think this should be > removeFromState() function call. (We should remove every marked subregions of > the object too.) > So I suspect a code like this would result a false positive: > ``` > struct A{ > B b; > void clear(); > }; > > void test(){ > A a; > B b = std::move(a.b); > a.clear(); > b = std::move(a); //report a bug > } > ``` > > I mean it is probably a report we do not want to have. Shame on the test file writer that he does not covered this, though. ^^ https://reviews.llvm.org/D31538 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits