NoQ added inline comments.
================
Comment at: clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp:731
+ }
+ return C.getNoteTag([Text, Name](BugReport &BR) -> std::string {
+ SmallString<256> Msg;
----------------
baloghadamsoftware wrote:
> NoQ wrote:
> > You'll need to check whether the container is actually of interest to the
> > bug report. We don't want notes to be added about changes to irrelevant
> > containers.
> >
> > You can use a combination of "Report `BR` was emitted by one of the
> > iterator checkers" and "The memory region of the container is marked as
> > interesting" (while also actually marking it as interesting in the checker).
> >
> > Ideally we should instead make a new generic storage inside the `BugReport`
> > object, in order to pass down the interesting information from the call
> > site of `emitReport` ("Hi, i'm an iterator checker who emitted this report
> > and i'm interested in changes made to the size of this container").
> Are you sure in this? I already wondered how it works so I added a test that
> checks one container and changes another one and there were no note tags
> displayed for the one we did not check but change. See the last test.
That's because you didn't do
```lang=c++
V2.cbegin();
V2.cend();
```
in the beginning.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73720/new/
https://reviews.llvm.org/D73720
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits