NagyDonat wrote:

> > the one found by claude;
> 
> This would be a small change in one commit.

My bad, I should have been more specific :sweat_smile: In fact Claude has found 
_two_ bugs:
- The small change that you speak about, the off-by-one error in `if (FName == 
"funopen") { if (Call.getNumArgs() >= 4 && Call.getArgSVal(4).isConstant(0))` – 
you are completely right that this can and should be postponed to a separate 
commit (because this is a preexisting issue that is independent of the rest)
- The more complex issue that I'm speaking about, where this PR introduces a 
memory leak false positive on the Objective-C++ code example shown in [this 
comment](https://github.com/llvm/llvm-project/pull/225489#issuecomment-6314962891)
 – this is a regression that would be introduced by this PR, so we shouldn't 
postpone it to a follow-up PR.

> This is a more complex change but if I do dedicated commits for it and nicely 
> explain them in a comment that might help with following each step.

This is exactly what I would've proposed a few years ago, but recently I 
started to see the value of a fresh start.

Abandoning these commits may appear as if we're wasting something valuable. 
However, the real value gained in this review process is that we have a better 
understanding of the possibilities, challenges and pitfalls – and the 
shaky-questionable commits are more of a liability than an asset.

This first PR just explores the area, as if the scouts of an army were 
exploring a swamp that they need to cross. Instead of "keeping" the scouts' 
meandering path and preparing it for the passage the whole army, it is often 
much better to use the information gained in the exploration to select and 
finalize a different, easier route.

> > maybe it is better if we switch roles: I create the PRs and you verify that 
> > I'm not overlooking some corner case.
> 
> If you disagree with my approach in this comment then we can go with this 
> suggestion. I want to make sure that 1) we can follow through the reasoning 
> on both sides 2) do not take more review time than needed from you and 
> steakhal. And of course having a change that is correct.

I would like to switch into a coding role, because – due to the complexity of 
the situation – I cannot "think ahead" and propose a large-scale plan where you 
can effectively fill in the details. If I'm coding, I can try uncertain ideas, 
iterate quickly and hopefully translate my vague understanding of the area more 
effectively. 

I think implementing this myself (with reviews to catch my mistakes!) would 
take less time from me than completing a review. (And if I'm overestimating my 
abilities, then this will be a useful learning experience :sweat_smile:) 

https://github.com/llvm/llvm-project/pull/225489
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to