toma@sail.LABS.TEK.COM (Tom Almy) (02/14/91)
The latest bug fix for XLISP 2.x: Problem: The environment is not properly restored when a return is executed within a DOLIST or DOTIMES form. Example: (prog ((x 10)) (dotimes (x 10) (return nil)) (print x)) will print "0" Solution: In file xlcont.c, functions xdolist() and xdotimes(), move the lines, /* unbind the arguments */ xlenv = cdr(xlenv); out of the else statement (just before the following "xlend(&cntxt)". -- Tom Almy toma@sail.labs.tek.com Standard Disclaimers Apply