Szelethus added a comment. Do we have a test where 2 containers are present but only one of them should be marked as interesting?
void deref_end_after_pop_back(std::vector<int> &V, std::vector<int> &V2) { const auto i = --V.end(); const auto i2 = --V2.end(); V.pop_back(); // expected-note{{Container 'V' shrinked from the right by 1 position}} V2.pop_back(); // no-note *i; // expected-warning{{Past-the-end iterator dereferenced}} // expected-note@-1{{Past-the-end iterator dereferenced}} } ================ Comment at: clang/lib/StaticAnalyzer/Checkers/DebugContainerModeling.cpp:95-103 + const NoteTag *InterestingTag = + C.getNoteTag([Cont](BugReport &BR) -> std::string { + auto *PSBR = dyn_cast<PathSensitiveBugReport>(&BR); + if (PSBR) { + PSBR->markInteresting(Cont); + } + return ""; ---------------- Aha, makes sense, when calling `clang_analyzer_container_end(V)`, we want to make the analyzer emit more information about `V` so its obviously interesting. ================ Comment at: clang/test/Analysis/container-modeling.cpp:35 //////////////////////////////////////////////////////////////////////////////// /// ---------------- I hate to be that guy, but this is quite ugly :). How about the handsome ``` //===--------------------------===// // Container assignment tests. //===--------------------------===// ``` But I don't insist, especially within the scope of this patch. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73720/new/ https://reviews.llvm.org/D73720 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits