szepet added a comment. Thank you for working on that, Artem! The changes look good, just one comment about that suspicious remove.
================ Comment at: lib/StaticAnalyzer/Checkers/MisusedMovedObjectChecker.cpp:426 + + State = State->remove<TrackedRegionMap>(WholeObjectRegion); C.addTransition(State); ---------------- 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. https://reviews.llvm.org/D31538 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits