Changeset 13996


Ignore:
Timestamp:
07/08/12 10:57:21 (11 years ago)
Author:
rschlatte
Message:

Small cleanup of atomic-defgeneric

File:
1 edited

Legend:

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

    r13992 r13996  
    27992799Note: the user should really use the (:method ..) method description
    28002800way of defining methods; there's not much use in atomically defining
    2801 generic functions without providing sensible behaviour..."
     2801generic functions without providing sensible behaviour."
    28022802  (let ((temp-sym (gensym)))
    28032803    `(progn
    28042804       (defgeneric ,temp-sym ,@rest)
    28052805       (let ((gf (symbol-function ',temp-sym)))
    2806          (setf ,(if (and (consp function-name)
    2807                          (eq (car function-name) 'setf))
    2808                     `(get ',(second function-name) 'setf-function)
    2809                   `(symbol-function ',function-name)) gf)
     2806         ;; FIXME (rudi 2012-07-08): fset gets the source location info
     2807         ;; to charpos 23 always (but (setf fdefinition) leaves the
     2808         ;; outdated source position in place, which is even worse).
     2809         (fset ',function-name gf)
    28102810         (%set-generic-function-name gf ',function-name)
     2811         (fmakunbound ',temp-sym)
    28112812         gf))))
    28122813
Note: See TracChangeset for help on using the changeset viewer.