* alloc.c (gdb_make_enums_visible) [USE_LSB_TAG]: Add lsb_bits.
* lisp.h (enum lsb_bits) [USE_LSB_TAG]: New enum, for
gdb_make_enums_visible.
(TYPEMASK, VALMASK) [USE_LSB_TAGS]: Now enum constants, not macros.
(DIRECTORY_SEP): Now a constant, not a macro.
+2012-07-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ Export DIRECTORY_SEP, TYPEMASK, VALMASK to GDB.
+ * alloc.c (gdb_make_enums_visible) [USE_LSB_TAG]: Add lsb_bits.
+ * lisp.h (enum lsb_bits) [USE_LSB_TAG]: New enum, for
+ gdb_make_enums_visible.
+ (TYPEMASK, VALMASK) [USE_LSB_TAGS]: Now enum constants, not macros.
+ (DIRECTORY_SEP): Now a constant, not a macro.
+
2012-07-30 Eli Zaretskii <eliz@gnu.org>
* w32fns.c (w32_wnd_proc): Pass w32_keyboard_codepage to
enum MAX_ALLOCA MAX_ALLOCA;
enum More_Lisp_Bits More_Lisp_Bits;
enum pvec_type pvec_type;
+#if USE_LSB_TAG
+ enum lsb_bits lsb_bits;
+#endif
} const EXTERNALLY_VISIBLE gdb_make_enums_visible = {0};
#if USE_LSB_TAG
-static int const VALMASK = -1 << GCTYPEBITS;
-#define TYPEMASK ((1 << GCTYPEBITS) - 1)
+enum lsb_bits
+ {
+ TYPEMASK = (1 << GCTYPEBITS) - 1,
+ VALMASK = ~ TYPEMASK
+ };
#define XTYPE(a) ((enum Lisp_Type) (XLI (a) & TYPEMASK))
#define XINT(a) (XLI (a) >> INTTYPEBITS)
#define XUINT(a) ((EMACS_UINT) XLI (a) >> INTTYPEBITS)
in addition to a device separator. Set the path separator
to '/', and don't test for a device separator in IS_ANY_SEP. */
-#define DIRECTORY_SEP '/'
+static char const DIRECTORY_SEP = '/';
#ifndef IS_DIRECTORY_SEP
#define IS_DIRECTORY_SEP(_c_) ((_c_) == DIRECTORY_SEP)
#endif