From: Thomas A. Russ
Subject: Re: Labels warning Allegro CL
Date: 
Message-ID: <ymin2dpjzet.fsf@sevak.isi.edu>
"Pingu" <···············@crc.doc.ca > writes:

 > When loading in Allegro CL: I get the following warning. Why is there only
 > one warning when there could potentially be 4 (associated with et input
 > arguments of the 2 functions in labels:
 > 
 > 
 > (defun maintain-coordinations
 >    (plan new-action new-coordination subgoals n-left)
 > 
 >    (labels (
 >       (check-new-action (coords_left latest-plan)   (...))
 > 
 >       (check-new-coord (actions-left latest-plan)     (...)) )
 > 
 >       ; end lables defs
 > 
 >       (if new-action
 >          (check-new-action (plan-coordinations plan) plan)
 >          (check-new-coord (plan-actions plan) plan) )
 >    ) ) )
 > 
 > 
 > Loading from #P"C:\\lisp\\nl_plan.lsp"
 > ;; Warning: Compilation warning: Attempt to reference non-special free
 > variable COORDS_LEFT. So will treat as special.
 > ;; Warning: Compilation warning: Attempt to reference non-special free
 > variable COORDS_LEFT. So will treat as special.
 > ;; Load Successful

The most common reason for this would really be that you really do have
a reference to COORDS_LEFT from somewhere not in the scope of the labels
function.  Either that or what you posted isn't exactly the code that
was compiled, and COORDS_LEFT was written as COORDS-LEFT in the argument
line.

-- 
Thomas A. Russ,  USC/Information Sciences Institute          ···@isi.edu