[armedbear-ticket] [armedbear] #101: lambda list checking optimizes away dispatch macros which return nil

armedbear armedbear-devel at common-lisp.net
Fri Jun 25 09:20:04 UTC 2010


#101: lambda list checking optimizes away dispatch macros which return nil
-----------------------------------------+----------------------------------
 Reporter:  mevenson                     |       Owner:  somebody
     Type:  defect                       |      Status:  new     
 Priority:  major                        |   Milestone:          
Component:  other                        |     Version:          
 Keywords:  lambda list, dispatch macro  |  
-----------------------------------------+----------------------------------
 After [r12693][1], dispatch macros which return nil are stripped from
 processing in lambda lists.

 For example

 {{{
 CL-USER> (defun foo (&key (this :that))
            this)

 CL-USER> (foo :this (#+:nil :other))
 Odd number of keyword arguments.
    [Condition of type PROGRAM-ERROR]
 }}}

 Among other things, this causes [usocket][2] to fail to load, erroring
 with the slightly mysterious "Unrecognized keyword argument :NAME" as
 reported by Kevin Raison.

 [1]: http://trac.common-lisp.net/armedbear/changeset/12693

 [2]: http://common-lisp.net/project/usocket/

-- 
Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/101>
armedbear <http://common-lisp.net/project/armedbear>
armedbear


More information about the armedbear-ticket mailing list