Ignore:
Timestamp:
03/27/11 10:50:56 (11 years ago)
Author:
Mark Evenson
Message:

Fix compilation of LOGAND for args that could possibly be nil.

Fixes ticket #142.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

    r13241 r13257  
    44094409                (convert-representation :int representation)
    44104410                (emit-move-from-stack target representation))
    4411                ((or (and (fixnum-type-p type1)
     4411               ((or (and (fixnum-type-p type1) (member type2 '(:long :int))
    44124412                         (compiler-subtypep type1 'unsigned-byte))
    4413                     (and (fixnum-type-p type2)
     4413                    (and (fixnum-type-p type2) (member type1 '(:long :int))
    44144414                         (compiler-subtypep type2 'unsigned-byte)))
    44154415                ;; One of the arguments is a positive fixnum.
     
    44304430                (convert-representation :long representation)
    44314431                (emit-move-from-stack target representation))
    4432                ((or (and (java-long-type-p type1)
     4432               ((or (and (java-long-type-p type1) (member type2 '(:long :int))
    44334433                         (compiler-subtypep type1 'unsigned-byte))
    4434                     (and (java-long-type-p type2)
     4434                    (and (java-long-type-p type2) (member type1 '(:long :int))
    44354435                         (compiler-subtypep type2 'unsigned-byte)))
    44364436                ;; One of the arguments is a positive long.
Note: See TracChangeset for help on using the changeset viewer.