aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorPaul Eggert2019-04-21 20:34:03 -0700
committerPaul Eggert2019-04-21 21:16:26 -0700
commitf67bc3f12b8ebe4ff0d133063e3c41ab772dbd45 (patch)
treef1f3482421b2358e0d95d1be4a62654c70a49a61 /src/alloc.c
parent3a618e5f89c86bc96925b06647fb33568c8fa2c9 (diff)
downloademacs-f67bc3f12b8ebe4ff0d133063e3c41ab772dbd45.tar.gz
emacs-f67bc3f12b8ebe4ff0d133063e3c41ab772dbd45.zip
Port to recent gcc -fsanitize=undefined
* src/alloc.c (XPNTR): Add ATTRIBUTE_NO_SANITIZE_UNDEFINED and remove ATTRIBUTE_UNUSED. Do not define as a macro, so that ATTRIBUTE_NO_SANITIZE_UNDEFINED works. * src/lisp.h (lisp_h_XSYMBOL): Remove. All uses removed. With recent GCC the macro does not work with -fsanitize=undefined, and the macro can be omitted as its only function is to optimize -O0.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/alloc.c b/src/alloc.c
index b5b6dc2f05f..a9cdd77ef2e 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -558,16 +558,12 @@ PNTR_ADD (char *p, EMACS_UINT i)
558 - ((EMACS_UINT) Lisp_Symbol << (USE_LSB_TAG ? 0 : VALBITS)))) \ 558 - ((EMACS_UINT) Lisp_Symbol << (USE_LSB_TAG ? 0 : VALBITS)))) \
559 : (char *) XLP (o) - (XLI (o) & ~VALMASK))) 559 : (char *) XLP (o) - (XLI (o) & ~VALMASK)))
560 560
561static ATTRIBUTE_UNUSED void * 561static ATTRIBUTE_NO_SANITIZE_UNDEFINED void *
562XPNTR (Lisp_Object a) 562XPNTR (Lisp_Object a)
563{ 563{
564 return macro_XPNTR (a); 564 return macro_XPNTR (a);
565} 565}
566 566
567#if DEFINE_KEY_OPS_AS_MACROS
568# define XPNTR(a) macro_XPNTR (a)
569#endif
570
571static void 567static void
572XFLOAT_INIT (Lisp_Object f, double n) 568XFLOAT_INIT (Lisp_Object f, double n)
573{ 569{