summaryrefslogtreecommitdiffstats
path: root/txr.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-09-02 19:46:18 -0700
committerKaz Kylheku <kaz@kylheku.com>2014-09-02 19:46:18 -0700
commit1572c93478c55ff14738a4b6f1b38dc41878a816 (patch)
tree3d02c3c2ab4c76af0ae6ce7f049edfa64405d04c /txr.c
parent0207bdeab644efddce25225c7344aabfb6d73f1f (diff)
downloadtxr-1572c93478c55ff14738a4b6f1b38dc41878a816.tar.gz
txr-1572c93478c55ff14738a4b6f1b38dc41878a816.tar.bz2
txr-1572c93478c55ff14738a4b6f1b38dc41878a816.zip
* eval.c (eval_init): Update registration of lisp-parse and read
to account for new parameter. * lib.c (syntax_error_s): New symbol_variable. (obj_init): New symbol variable initialized. * lib.h (syntax_error_s): Declared. * parser.h (lisp_parse): Declaration updated. * parser.l (lisp_parse): Takes third parameter. * txr.1: Third parameter of read described. * txr.c (txr_main): Pass colon_k to third parameter of lisp_parse to obtain exception throwing behavior. * unwind.c (uw_init): Register syntax-error as subtype of error.
Diffstat (limited to 'txr.c')
-rw-r--r--txr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/txr.c b/txr.c
index d637ddbb..9963fd30 100644
--- a/txr.c
+++ b/txr.c
@@ -404,11 +404,12 @@ int txr_main(int argc, char **argv)
spec_file = arg;
break;
case 'e':
- eval_intrinsic(lisp_parse(arg, std_error), make_env(bindings, nil, nil));
+ eval_intrinsic(lisp_parse(arg, std_error, colon_k),
+ make_env(bindings, nil, nil));
evaled = t;
break;
case 'p':
- obj_print(eval_intrinsic(lisp_parse(arg, std_error),
+ obj_print(eval_intrinsic(lisp_parse(arg, std_error, colon_k),
make_env(bindings, nil, nil)), std_output);
put_char(chr('\n'), std_output);
evaled = t;