Changeset 13856 in project


Ignore:
Timestamp:
03/22/09 00:51:14 (11 years ago)
Author:
felix winkelmann
Message:

fixed incomplete handling of lambda expressions in operator position (reported by Jim Ursetto)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chicken/trunk/compiler.scm

    r13712 r13856  
    12161216          ((and (pair? (car x))
    12171217                (symbol? (caar x))
    1218                 (eq? 'lambda (or (lookup (caar x) se) (caar x))))
     1218                (memq (or (lookup (caar x) se) (caar x)) '(lambda ##core#lambda)))
    12191219           (let ([lexp (car x)]
    12201220                 [args (cdr x)] )
    12211221             (emit-syntax-trace-info x #f)
    1222              (##sys#check-syntax 'lambda lexp '(lambda lambda-list . #(_ 1)) #f se)
     1222             (##sys#check-syntax 'lambda lexp '(_ lambda-list . #(_ 1)) #f se)
    12231223             (let ([llist (cadr lexp)])
    12241224               (if (and (proper-list? llist) (= (llist-length llist) (length args)))
Note: See TracChangeset for help on using the changeset viewer.