aboutsummaryrefslogtreecommitdiff
path: root/gdb/scm-valprint.c
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1995-10-05 05:24:41 +0000
committerPer Bothner <per@bothner.com>1995-10-05 05:24:41 +0000
commit3c02944a988ffb5ce4599a8013675a3ea49e538b (patch)
tree31062c6ae0d27a423e2379b1269d79280e428fd7 /gdb/scm-valprint.c
parent4caf3f7d0ec772da6f419b5e0cb20e687298537a (diff)
downloadgdb-3c02944a988ffb5ce4599a8013675a3ea49e538b.zip
gdb-3c02944a988ffb5ce4599a8013675a3ea49e538b.tar.gz
gdb-3c02944a988ffb5ce4599a8013675a3ea49e538b.tar.bz2
* expression.h (enum exp_code): Added OP_NAME.
* expprint.c (print_subexp): Add OP_NAME support. * parse.c (length_of_subexp, prefixify_subexp): Likewise. * scm-lang.c (scm_unpack, in_eval_c, scm_lookup_name): new function. * scm-lang.h: Declare builtin_type_scm; other minor tweaks. * values.c (unpack_long): If type is SCM, call scm_unpack. * scm-valprint.c (scm_val_print): Use extract_signed_integer, instead unpack_long * scm-lang.c: More Scheme expression parsing from here ... * scm-exp.c: ... to here. New file. Also, provide for gdb to evaluate simple constants and names.. * Makefile.in: Note new scm-exp.{c,o}.
Diffstat (limited to 'gdb/scm-valprint.c')
-rw-r--r--gdb/scm-valprint.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gdb/scm-valprint.c b/gdb/scm-valprint.c
index ef2ba67..de59220 100644
--- a/gdb/scm-valprint.c
+++ b/gdb/scm-valprint.c
@@ -128,7 +128,7 @@ scm_ipruk (hdr, ptr, stream)
GDB_FILE *stream;
{
fprintf_filtered (stream, "#<unknown-%s", hdr);
-#define SCM_SIZE (SCM_TYPE ? TYPE_LENGTH (SCM_TYPE) : sizeof (void*))
+#define SCM_SIZE TYPE_LENGTH (builtin_type_scm)
if (SCM_CELLP (ptr))
fprintf_filtered (stream, " (0x%lx . 0x%lx) @",
(long) SCM_CAR (ptr), (long) SCM_CDR (ptr));
@@ -372,7 +372,7 @@ scm_val_print (type, valaddr, address, stream, format, deref_ref, recurse,
{
if (is_scmvalue_type (type))
{
- LONGEST svalue = unpack_long (type, valaddr);
+ LONGEST svalue = extract_signed_integer (valaddr, TYPE_LENGTH (type));
if (scm_inferior_print (svalue, stream, format,
deref_ref, recurse, pretty) >= 0)
{