gamesh411 wrote:

My idea is to move the encoding of UB thanks to cross-subobject indexing out 
from the `RegionStore` and make it a concern of the checkers (and anyway, the 
encoding of this information is not exploited as of now, as the cross-subobject 
UB is not reported in any way before or after this change, so we are not losing 
anything by removing this responsibility/capability from the `RegionStore`).

Reasons for putting this change in the `RegionStore` and not in the checker 
code itself:

1. While technically UB, it seems to be a widely used pattern in real-world C 
codebases to depend on the flat layout of a multidimensional declaration being 
there and available.
2. It would be beneficial to model memory in the `RegionStore` without the 
added complication of determining whether a particular way of accessing that 
region is allowed by the language.


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

Reply via email to