baloghadamsoftware added a comment.

Hello! I am not sure how to split it to incremental patches. As I mentioned in 
the description, the state of the iterator position is always tracked. So if I 
remove some of the checks it does not make the patch much smaller, since the 
checking part is quite small. If I remove parts of the tracking, I introduce 
lots of false positives and uncaught bugs.

Container and offset tracking is needed for both range and validity checks. 
Match check does not need the offset, but removing it means lots of work, and 
does not help either because the second patch (adding range and validity checks 
incrementally) will remain huge.

Doing the rename in a separate patch is useless, because this checker is 
totally new: the whole position tracking uses a new concept. What I reused is 
the method of transferring the position between various SVals. Doing the rename 
separately would mean the same amount of green and lots of red.

What I could do is to rearrange of the functions a bit (separate tracking and 
checking) and adding more comments to the function. Would it help?


https://reviews.llvm.org/D31975



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

Reply via email to