aboutsummaryrefslogtreecommitdiff
path: root/gdb/parse.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/parse.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/parse.c')
-rw-r--r--gdb/parse.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gdb/parse.c b/gdb/parse.c
index a545814..fb8793f 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -512,6 +512,7 @@ length_of_subexp (expr, endpos)
/* fall through */
case OP_M2_STRING:
case OP_STRING:
+ case OP_NAME:
case OP_EXPRSTRING:
oplen = longest_to_int (expr->elts[endpos - 2].longconst);
oplen = 4 + BYTES_TO_EXP_ELEM (oplen + 1);
@@ -650,6 +651,7 @@ prefixify_subexp (inexpr, outexpr, inend, outbeg)
/* fall through */
case OP_M2_STRING:
case OP_STRING:
+ case OP_NAME:
case OP_EXPRSTRING:
oplen = longest_to_int (inexpr->elts[inend - 2].longconst);
oplen = 4 + BYTES_TO_EXP_ELEM (oplen + 1);