[clang] -fsanitize=alignment: check memcpy/memmove arguments (PR #67766)

Nikita Popov via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 2 13:19:47 PDT 2023


nikic wrote:

@zygoloid Thanks for the explanation! I wasn't aware this fell under unspecified behavior. It's weird that alignment information can survive a `void *` cast, but it does make some sense.

What seems worrying here is that apparently GCC and Clang do not agree on semantics in this case (https://godbolt.org/z/1r9df5a4a). GCC does not assume that the pointers are aligned. The perils of unspecified behavior....

https://github.com/llvm/llvm-project/pull/67766


More information about the cfe-commits mailing list