• Paul Eggert's avatar
    Avoid undefined behavior in signed left shift. · 6ab1b16c
    Paul Eggert authored
    This ports to GCC 4.9.0 with -fsanitize=undefined.
    * alloc.c (bool_vector_fill, SETMARKBIT, UNSETMARKBIT):
    * data.c (Fash):
    * regex.c (extract_number):
    * lisp.h (make_number, XINT):
    Do not shift a 1 bit left into a sign bit.
    * alloc.c (struct cons_block, struct float_block): Use unsigned,
    not int, for gcmarkbits.  All uses changed.
    6ab1b16c
lisp.h 150 KB