Ignore:
Timestamp:
07/15/10 22:06:43 (13 years ago)
Author:
ehuelsmann
Message:

Backport r12796-12805 from trunk.

Reduces the current 37 ANSI failures to 34.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/generic-class-file/abcl/src/org/armedbear/lisp/precompiler.lisp

    r12796 r12807  
    789789        (operator (car form))
    790790        (locals (cadr form))
    791         ;; precompile (thus macro-expand) the body before inspecting it
    792         ;; for the use of our locals and optimizing them away
    793         (body (mapcar #'precompile1 (cddr form))))
     791  body)
     792    ;; first augment the environment with the newly-defined local functions
     793    ;; to shadow preexisting macro definitions with the same names
     794    (dolist (local locals)
     795      (environment-add-function-definition *precompile-env*
     796             (car local) (cddr local)))
     797    ;; then precompile (thus macro-expand) the body before inspecting it
     798    ;; for the use of our locals and optimizing them away
     799    (setq body (mapcar #'precompile1 (cddr form)))
    794800    (dolist (local locals)
    795801      (let* ((name (car local))
Note: See TracChangeset for help on using the changeset viewer.