[PATCH] D67336: [analyzer][NFC] Introduce SuperChecker<>, a convenient alternative to Checker<> for storing subcheckers

Gabor Marton via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 18 08:42:11 PDT 2020


martong added a comment.

The way I see perhaps we need a 3rd class of checkers (beside super and sub). And that would be those checkers which are not dependent closely on any super checker but they do emit diagnostics. E.g. the PlacementNewChecker is implemented in it's own, it emits some diagnostics, and does not model. However, it depends on MallocChecker's modeling when we are interested in dynamically allocated buffers sizes. Or would you add PlacementNewChecker as MallocChecker's subchecker? That seems a bit overkill to me.

On the other hand I see that e.g. MallocChecker should have several subcheckers (doubleDelete, etc). And these subcheckers do closely operate on the data stored in their super checker. 
(Another approach could be if we have a global data storage where every modeling checker puts its own data, and other checkers can access this, actually Regions is one example to this.)

What is a `CallDescriptionMap`? Could you please explain further?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67336/new/

https://reviews.llvm.org/D67336





More information about the cfe-commits mailing list