On Thu, 2023-03-30 at 11:34 +0200, Robert Pluim wrote: > Instead, HAVE_FAST_UNALIGNED_ACCESS and UNALIGNED_LOAD_SIZE should be > removed and memcpy used instead: > >   word_t a, c; > >   memcpy (&a, w1 + b / ws, sizeof a); >   memcpy (&c, w2 + b / ws, sizeof c); > I had recently made a few modifications to this on master. There, Fstring_lessp in uses the macro UNALIGNED_LOAD_SIZE instead, which is defined to __sanitizer_unaligned_loadXX in lisp.h if: * We're building with AddressSaniziter, * is available, and * USE_SANITIZER_UNALIGNED_LOAD is defined. > I would like to install such a change on emacs-29.  Emacs currently > crashes when built with various compilers performing pointer > alignment > checks. Instead of removing the code entirely, you could try modifying the macro definition by getting rid of the AddressSanitizer ifdef, and building with USE_SANITIZER_UNALIGNED_LOAD. In theory, this should make the load not crash with other sanitizers as well. If that works, I imagine that would be a slightly more acceptable change to install into emacs-29. Best, Vibhav -- Vibhav Pant vibhavp@gmail.com GPG: 7ED1 D48C 513C A024 BE3A 785F E3FB 28CB 6AB5 9598