Changeset 14028


Ignore:
Timestamp:
07/31/12 12:26:35 (8 years ago)
Author:
ehuelsmann
Message:

When creating a generic function on top of an autoloader, don't
resolve the autoloader: that's probably what we are already doing
(but the function doesn't get replaced until autoloading has succeeded).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/clos.lisp

    r14021 r14028  
    16541654                                documentation
    16551655                                &allow-other-keys)
    1656   (when (autoloadp function-name)
    1657     (resolve function-name))
    16581656  (setf all-keys (copy-list all-keys))  ; since we modify it
    16591657  (remf all-keys :generic-function-class)
     
    16781676        (progn
    16791677          (when (and (null *clos-booting*)
    1680                      (fboundp function-name))
     1678                     (and (fboundp function-name)
     1679                          ;; since we're overwriting an autoloader,
     1680                          ;; we're probably meant to redefine it,
     1681                          ;; so throwing an error here might be a bad idea.
     1682                          ;; also, resolving the symbol isn't
     1683                          ;; a good option either: we've seen that lead to
     1684                          ;; recursive loading of the same file
     1685                          (not (autoloadp function-name))))
    16811686            (error 'program-error
    16821687                   :format-control "~A already names an ordinary function, macro, or special operator."
Note: See TracChangeset for help on using the changeset viewer.