Xazax-hun wrote:

I am really glad that there is a consensus on the behavior what we want and the 
only contention is how would we get there.

It would be great to summarize the pros and cons of the two approaches, but 
before someone is doing that I wanted to make it clear that I think some of the 
arguments might not hold much water (but let me know if you disagree). 
Specifically, the fact that other checkers might also benefit from these new 
suppression heuristics does not imply that any of the approaches are more 
desirable than the other. There are visitors shared across the checks, so I 
believe both approaches could be easily adopted by other checks.

Moreover, I don't think the future discussions about changing path exploration 
heuristics should get too much weight either. I think if we start to cut some 
execution paths, we will no longer need the state trait to check if we saw any 
assumptions, and we no longer need the bug visitor either. I think changing the 
path exploration heuristics in the engine is a relatively straightforward 
change and the challenge is to validate that the user experience and the 
results actually got better rather than making the code change itself.

My point is, I think in this case we should evaluate the approaches on their 
own merits, and future plans or adoptability to other checks should not play a 
big role in the decision because I do not see a clear advantage there for 
either of the solutions. So let's focus the discussion on comparing the 
correctness, complexity, separation of concerns, and performance of the 
proposed solutions without the diversions.


https://github.com/llvm/llvm-project/pull/109804
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to