NagyDonat wrote:

> I can see a failed test in the premerge checks. How can we have failing tests 
> with an NFC patch?

My NFC commit introduced this new test which was passing locally but failed in 
the CI because the CI rebases the PR onto the current main, where your commit 
https://github.com/Ericsson/llvm-project/commit/db28e48d67e3b0c44d88be9ea2d28eca2d239a9a
 improved the range calculations after addition/subtraction/multiplication.

I fixed this by merging main into the PR banch and updating the testcase in 
https://github.com/llvm/llvm-project/pull/210774/commits/d4705fa3fc7c32e5a5c8138754928d204fcd630a.

> The taint check moved from inside the `ExceedsUpperBound` block up to 
> `handleAccessExpr`, guarded by `mayBeInvalid() && mayBeValid()`. This makes 
> tainted offsets that are ambiguous only on the lower bound (e.g. if `(idx < 
> 10) buf[idx]` with tainted idx and a larger buffer) newly reportable as taint 
> OOB, where the old code emitted no warning.
> 
> This is something that is likely to surface, so I'd carve it out of an NFC PR 
> such that in the future we could come back to it if needed. This shouldn't be 
> too difficult to hoist from this PR.

Good point -- I forgot to preserve this limitation of the old logic 
:sweat_smile:

Old behavior restored in 
https://github.com/llvm/llvm-project/pull/210774/commits/5c575afa9af757949b5d296f4300da871c2a384d

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

Reply via email to