summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-04-29 20:27:40 -0700
committerKaz Kylheku <kaz@kylheku.com>2015-04-29 20:27:40 -0700
commit2d76c83d30eeabf0b781c85e4ae21bdc6f0b012b (patch)
treeb97537855c1da73a69af589b2ae486c4422abce6 /ChangeLog
parentd428a0e222590c1eb20c7abdf2905ff0ebddc69a (diff)
downloadtxr-2d76c83d30eeabf0b781c85e4ae21bdc6f0b012b.tar.gz
txr-2d76c83d30eeabf0b781c85e4ae21bdc6f0b012b.tar.bz2
txr-2d76c83d30eeabf0b781c85e4ae21bdc6f0b012b.zip
Improved syntax checking: defun, flet, labels, lambda.
* eval.c (check_lambda_list): New static function. (op_defun): Argument list checking moved into check_lambda_list, which is called for defun out of do_expand. Name checks moved into do_expand. Thus, defun is checked earlier, at expansion time. (me_flet_labels): Check the lambda list of each lexical function with check_lambda_list. (do_expand): Check the syntax of the lambda form, and the validity of its argument list. Check the name of a defun or defmacro for validity. Check the validity of the defun argument list.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog16
1 files changed, 16 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index a8e7604e..e59ab142 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,21 @@
2015-04-29 Kaz Kylheku <kaz@kylheku.com>
+ Improved syntax checking: defun, flet, labels, lambda.
+
+ * eval.c (check_lambda_list): New static function.
+ (op_defun): Argument list checking moved into
+ check_lambda_list, which is called for defun out of
+ do_expand. Name checks moved into do_expand.
+ Thus, defun is checked earlier, at expansion time.
+ (me_flet_labels): Check the lambda list of each lexical function
+ with check_lambda_list.
+ (do_expand): Check the syntax of the lambda form, and
+ the validity of its argument list.
+ Check the name of a defun or defmacro for validity.
+ Check the validity of the defun argument list.
+
+2015-04-29 Kaz Kylheku <kaz@kylheku.com>
+
Bugfix: cannot print (lambda . 42) structure.
* lib.c (obj_print, obj_pprint): Fix mistake in the test for