[armedbear-ticket] [armedbear] #199: CL:DEFMETHOD cannot parse &AUX arguments

armedbear armedbear-devel at common-lisp.net
Wed Feb 29 10:26:30 UTC 2012


#199: CL:DEFMETHOD cannot parse &AUX arguments
-----------------------------------------------+----------------------------
 Reporter:  mevenson                           |       Owner:  mevenson 
     Type:  defect                             |      Status:  assigned 
 Priority:  critical                           |   Milestone:  1.1.0    
Component:  (A)MOP                             |     Version:  1.1.0-dev
 Keywords:  quicklisp restas ansi-conformance  |  
-----------------------------------------------+----------------------------
Changes (by mevenson):

  * reporter:  ehuelsmann => mevenson


Comment:

 As noted in
 [http://www.lispworks.com/documentation/HyperSpec/Body/03_dae.htm the
 CLHS], the use of &AUX is equivalent to putting the forms in a LET*
 binding, so as a workaround for the original problem with RESTAS replace

 {{{
 (defmethod submodule-routes ((submodule submodule)
                              &aux (decorators (submodule-decorators
 submodule)))
   (mapcar (lambda (route)
             (apply-decorators route decorators))
           (module-routes (submodule-module submodule) submodule)))
 }}}

 with

 {{{
 (defmethod submodule-routes ((submodule submodule))
   (let* ((decorators (submodule-decorators submodule))))
     (mapcar (lambda (route)
               (apply-decorators route decorators))
             (module-routes (submodule-module submodule) submodule)))
 }}}

 See http://detroit.slack.net/~evenson/abcl/restas/abcl-restas-defmethod-
 aux-20120229a.patch.

-- 
Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/199#comment:9>
armedbear <http://common-lisp.net/project/armedbear>
armedbear


More information about the armedbear-ticket mailing list