Changeset 11157


Ignore:
Timestamp:
Oct 18, 2008, 6:15:21 PM (11 years ago)
Author:
gz
Message:

From working-0711 branch:

r9416: when processing a (nested) %defun, encode the arglist info in compile-time function info
r10996: no dup definition warnings inside conditionals

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/compiler/nx1.lisp

    r11104 r11157  
    10001000      (return-from nx1-if (nx1-form `(progn ,test nil)))
    10011001      (psetq test `(not ,test) true false false true)))
    1002   (make-acode (%nx1-operator if)  (nx1-form test) (nx1-form true) (nx1-form false)))
     1002  (let ((test-form (nx1-form test))
     1003        ;; Once hit a conditional, no more duplicate warnings
     1004        (*compiler-warn-on-duplicate-definitions* nil))
     1005    (make-acode (%nx1-operator if) test-form (nx1-form true) (nx1-form false))))
    10031006
    10041007(defnx1 nx1-%debug-trap dbg (&optional arg)
     
    11761179           (consp (%cdr def))
    11771180           (or (symbolp (%cadr def)) (setf-function-name-p (%cadr def))))
    1178     (note-function-info (%cadr def) nil env))
     1181    (note-function-info (%cadr def) (caddr def) env))
    11791182  (nx1-treat-as-call w))
    11801183
     
    12101213  (nx1-afunc-ref afunc))
    12111214
    1212 (defun nx1-compile-inner-function (name def
    1213                                         &optional p (env *nx-lexical-environment*)
     1215(defun nx1-compile-inner-function (name def p
     1216                                        &optional (env *nx-lexical-environment*)
    12141217                                        &aux (q *nx-current-function*))
    12151218  (unless p (setq p (make-afunc)))
Note: See TracChangeset for help on using the changeset viewer.