brunodf-snps wrote: > We're documenting a weaker guarantee than we implement, yes.
OK, thanks. I guess the wording "in Clang 20, [...] Clang now distinguishes different pointers by their pointee type, except as limited by the relaxations around qualifiers and `void*` described above" led me to believe this was intended as a description of what was currently implemented. Anyway, and more importantly, does the choice to document a weaker guarantee mean that you expect that the TBAA implementation can be further refined in this respect? (Which does not seem hard.) Or is it too dangerous for Clang to have stricter aliasing rules than GCC? GCC does seem to consider `int*` and `void**` to alias, or so I conclude from the extra load of `*p1` in test1 here: https://godbolt.org/z/5jjh8MrP8 https://github.com/llvm/llvm-project/pull/122116 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits