[PATCH] D50488: [Analyzer] Checker for non-determinism caused by sorting of pointer-like elements
Kristóf Umann via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 19 12:26:20 PST 2019
Szelethus added a comment.
In D50488#1402699 <https://reviews.llvm.org/D50488#1402699>, @mgrang wrote:
> In D50488#1400823 <https://reviews.llvm.org/D50488#1400823>, @whisperity wrote:
>
> > Yeah, it seems upstream has moved away due to @Szelethus' implementation of a much more manageable "checker dependency" system. You most likely will have to rebase your patch first, then check what you missed which got added to other merged, existing checkers.
>
>
> Moreover, as I said I hit this assert only when invoking the checker via csa-testbench. Outside that it seems to work fine. For example, my unit test Analysis/ptr-sort.cpp passes.
It's because it invokes CodeChecker, which by default enables `valist.Uninitialized`, but not `ValistBase`. Do you have assert failures after my hotfix?
> Yes, I see that D55429 <https://reviews.llvm.org/D55429>, D54438 <https://reviews.llvm.org/D54438> added a new dependency field for checkers. However, I see that not all checkers need/have that field. In this case, shouldn't providing a ento::shouldRegisterPointerSortingChecker function which returns true be enough to register the checker?
It is enough, and you're very right about this not being properly documented! There is a revision to solve this problem here: D58065 <https://reviews.llvm.org/D58065>. I guess your input, as someone who didn't participate in the checker dependency related patch reviews would be invaluable, in terms of whether my description is understandable enough.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D50488/new/
https://reviews.llvm.org/D50488
More information about the cfe-commits
mailing list