summaryrefslogtreecommitdiff
path: root/src/emacs.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2012-07-26 11:35:50 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2012-07-26 11:35:50 -0700
commit5eceb8fb134263b05608532afb33fdf43c1e3713 (patch)
tree45086aac676975ccd028122a2379095e1c885173 /src/emacs.c
parentf8b91036c9ce5e524ca3d21badee83a3c6794941 (diff)
downloademacs-5eceb8fb134263b05608532afb33fdf43c1e3713.tar.gz
Fix export of symbols to GDB.
* alloc.c (ARRAY_MARK_FLAG_VAL, PSEUDOVECTOR_FLAG_VAL, VALMASK_VAL) (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Move these here from emacs.c, as this is a more-suitable home. Had this been done earlier the fix for 1995-05-30T23:07:27Z!kwzh@gnu.org would have avoided some of the problems noted in <http://bugs.gnu.org/1995-05-30T23:07:27Z!kwzh@gnu.org#13> by Eli Zaretskii, as the scope problems would have been more obvious. * emacs.c (gdb_CHECK_LISP_OBJECT_TYPE, gdb_DATA_SEG_BITS) (gdb_GCTYPEBITS, gdb_USE_LSB_TAG) (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS, GCTYPEBITS, USE_LSB_TAG): Remove; now done in lisp.h. * lisp.h (PUBLISH_TO_GDB): New macro. (GCTYPEBITS, USE_LSB_TAG, CHECK_LISP_OBJECT_TYPE, enum pvec_type) (DATA_SEG_BITS): Use it. (GCTYPEBITS, USE_LSB_TAG): Now also an enum, for GDB. (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS): Now just an enum, for GDB. * mem-limits.h (EXCEEDS_LISP_PTR): Redo so that DATA_SEG_BITS need not be usable in #if. This simplifies things.
Diffstat (limited to 'src/emacs.c')
-rw-r--r--src/emacs.c47
1 files changed, 0 insertions, 47 deletions
diff --git a/src/emacs.c b/src/emacs.c
index c737a41974f..7dad87ef38b 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -2490,50 +2490,3 @@ libraries; only those already known by Emacs will be loaded. */);
/* Make sure IS_DAEMON starts up as false. */
daemon_pipe[1] = 0;
}
-
-/* Make these values available in GDB, which doesn't see macros.
- This is last, so that the #undef lines don't mess up later code. */
-
-enum
- {
- gdb_CHECK_LISP_OBJECT_TYPE = CHECK_LISP_OBJECT_TYPE,
- gdb_DATA_SEG_BITS = DATA_SEG_BITS,
- gdb_GCTYPEBITS = GCTYPEBITS,
- gdb_USE_LSB_TAG = USE_LSB_TAG
- };
-
-#undef CHECK_LISP_OBJECT_TYPE
-#undef DATA_SEG_BITS
-#undef GCTYPEBITS
-#undef USE_LSB_TAG
-
-enum
- {
- CHECK_LISP_OBJECT_TYPE = gdb_CHECK_LISP_OBJECT_TYPE,
- DATA_SEG_BITS = gdb_DATA_SEG_BITS,
- GCTYPEBITS = gdb_GCTYPEBITS,
- USE_LSB_TAG = gdb_USE_LSB_TAG
- };
-
-/* These are trickier since they might fall out of int range. Each
- symbol X has a corresponding X_VAL symbol, verified to have the
- correct value. */
-
-#define ARRAY_MARK_FLAG_VAL PTRDIFF_MIN
-#define PSEUDOVECTOR_FLAG_VAL (PTRDIFF_MAX - PTRDIFF_MAX / 2)
-#define VALMASK_VAL (USE_LSB_TAG ? -1 << GCTYPEBITS : VAL_MAX)
-
-verify (ARRAY_MARK_FLAG_VAL == ARRAY_MARK_FLAG);
-verify (PSEUDOVECTOR_FLAG_VAL == PSEUDOVECTOR_FLAG);
-verify (VALMASK_VAL == VALMASK);
-
-#undef ARRAY_MARK_FLAG
-#undef PSEUDOVECTOR_FLAG
-#undef VALMASK
-
-ptrdiff_t const EXTERNALLY_VISIBLE
- ARRAY_MARK_FLAG = ARRAY_MARK_FLAG_VAL,
- PSEUDOVECTOR_FLAG = PSEUDOVECTOR_FLAG_VAL;
-
-EMACS_INT const EXTERNALLY_VISIBLE
- VALMASK = VALMASK_VAL;