aboutsummaryrefslogtreecommitdiff
path: root/gdb/scm-lang.h
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-lang.h
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-lang.h')
-rw-r--r--gdb/scm-lang.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/scm-lang.h b/gdb/scm-lang.h
index 2f3f451..73fc745 100644
--- a/gdb/scm-lang.h
+++ b/gdb/scm-lang.h
@@ -20,6 +20,7 @@
#define SCM_VELTS(x) ((SCM *)SCM_CDR(x))
#define SCM_CLOSCAR(x) (SCM_CAR(x)-scm_tc3_closure)
#define SCM_CODE(x) SCM_CAR(SCM_CLOSCAR (x))
+#define SCM_MAKINUM(x) (((x)<<2)+2L)
#ifdef __STDC__ /* Forward decls for prototypes */
struct value;
@@ -40,5 +41,8 @@ extern int is_scmvalue_type PARAMS ((struct type*));
extern void scm_printchar PARAMS ((int, GDB_FILE*));
-struct type *SCM_TYPE;
+extern struct value * scm_evaluate_string PARAMS ((char*, int));
+extern struct type *builtin_type_scm;
+
+extern int scm_parse ();