https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104262

--- Comment #4 from eggert at cs dot ucla.edu ---
Thanks for looking into the problem. DR#460 says that the C2x committee adopted
wording based on N2072, which which made the point that non-integral multiples
of alignment are useful - for the same reasons that prompted my bug report.
This reflects longstanding wording in the C standard that, for example, 'malloc
(sizeof (double) + 1)' yields a pointer suitably aligned for 'double'. So this
is indeed a bug in gcc's -fsanitize=address option.

> changes against the sanitizer libs need to go against the
> compiler-rt upstream and only then can be cherry-picked from there.
As I understand it, GCC has local patches so that its libsanitizer differs from
upstream, and this patch could be added to that difference set if necessary.
However, you're right that it's better to have upstream fix it, so that the fix
is everywhere. I filed a bug report upstream here:

https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20220124/1001910.html

and I hope they act on it.

Reply via email to