NoQ added a comment.

These are some great questions, i guess it'd be better to discuss them more 
openly. As a quick dump of my current mood:

- To me it seems obvious that we need  to aim for a checker API that is both 
simple //and// powerful. This can probably by keeping the API as powerful as 
necessary while providing a layer of simple ready-made solutions on top of it. 
Probably a few reusable components for assembling checkers. And this layer 
should ideally be pleasant enough to work with, so that people would prefer to 
extend it when something is lacking, instead of falling back to the complex 
omnipotent API. I'm thinking of AST matchers vs. AST visitors as a roughly 
similar situation: matchers are not omnipotent, but they're so nice.

- Separation between core and checkers is usually quite strange. Once we have 
shared state traits, i generally wouldn't mind having region store or range 
constraint manager as checkers (though it's probably not worth it to transform 
them - just a mood). The main thing to avoid here would be the situation when 
the checker overwrites stuff written by the core because it thinks it has a 
better idea what's going on, so the core should provide a good default behavior.

- Yeah, i totally care about performance as well, and if i try to implement 
approach, i'd make sure it's good.


https://reviews.llvm.org/D35216



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to