From ddd0d01eed235ef965e622c982667eeb2eb528c8 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Wed, 9 Jun 2010 02:04:08 +0000 Subject: Widen scope of iterator variables in presence of terminating predicate iterators. There is exactly one instance in the entire OpenAxio library. * interp/g-util.boot (expandIN): Take one more parameter to determine early binding. (expandIterators): Determine if wider scope is needed for iterator variables. --- src/algebra/strap/OUTFORM.lsp | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) (limited to 'src/algebra/strap/OUTFORM.lsp') diff --git a/src/algebra/strap/OUTFORM.lsp b/src/algebra/strap/OUTFORM.lsp index 7fcd1a22..e9b6abc6 100644 --- a/src/algebra/strap/OUTFORM.lsp +++ b/src/algebra/strap/OUTFORM.lsp @@ -836,19 +836,15 @@ (DEFUN |OUTFORM;empty;$;73| ($) (LIST 'NOTHING)) (DEFUN |OUTFORM;infix?;$B;74| (|a| $) - (PROG (#0=#:G1496 |e|) + (PROG (|e|) (RETURN - (SEQ (EXIT (SEQ (LETT |e| - (COND - ((IDENTP |a|) |a|) - ((STRINGP |a|) (INTERN |a|)) - ('T - (PROGN - (LETT #0# NIL |OUTFORM;infix?;$B;74|) - (GO #0#)))) - |OUTFORM;infix?;$B;74|) - (EXIT (COND ((GET |e| 'INFIXOP) T) ('T NIL))))) - #0# (EXIT #0#))))) + (SEQ (LETT |e| + (COND + ((IDENTP |a|) |a|) + ((STRINGP |a|) (INTERN |a|)) + ('T (RETURN-FROM |OUTFORM;infix?;$B;74| NIL))) + |OUTFORM;infix?;$B;74|) + (EXIT (COND ((GET |e| 'INFIXOP) T) ('T NIL))))))) (DEFUN |OUTFORM;elt;$L$;75| (|a| |l| $) (DECLARE (IGNORE $)) -- cgit v1.2.3