Changeset 7364 in project


Ignore:
Timestamp:
01/16/08 10:44:09 (12 years ago)
Author:
felix winkelmann
Message:

accepts unspecified value as valid literal [thanks to Alex Shinn]

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chicken/trunk/compiler.scm

    r7167 r7364  
    22982298   
    22992299    (define (immediate-literal x)
    2300       (make-node '##core#immediate
    2301                  (cond ((fixnum? x) `(fix ,x))
    2302                        ((boolean? x) `(bool ,x))
    2303                        ((char? x) `(char ,x))
    2304                        ((null? x) '(nil))
    2305                        ((eof-object? x) '(eof))
    2306                        (else (bomb "bad immediate (prepare)")) )
    2307                  '() ) )
     2300      (if (eq? (void) x)
     2301          (make-node '##core#undefined '() '())
     2302          (make-node '##core#immediate
     2303                     (cond ((fixnum? x) `(fix ,x))
     2304                           ((boolean? x) `(bool ,x))
     2305                           ((char? x) `(char ,x))
     2306                           ((null? x) '(nil))
     2307                           ((eof-object? x) '(eof))
     2308                           (else (bomb "bad immediate (prepare)")) )
     2309                     '() ) ) )
    23082310   
    23092311    (debugging 'p "preparation phase...")
Note: See TracChangeset for help on using the changeset viewer.