Changeset 15030


Ignore:
Timestamp:
06/01/17 06:46:09 (6 years ago)
Author:
Mark Evenson
Message:

Declare copy functions for structures

(Olof-Joachim Frahm)

File:
1 edited

Legend:

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

    r14914 r15030  
    432432  (when *dd-copier*
    433433    (cond ((eq *dd-type* 'list)
    434            `((setf (fdefinition ',*dd-copier*) #'copy-list)))
     434           `((declaim (ftype (function (list) list) ,*dd-copier*))
     435             (setf (fdefinition ',*dd-copier*) #'copy-list)))
    435436          ((or (eq *dd-type* 'vector)
    436437               (and (consp *dd-type*) (eq (car *dd-type*) 'vector)))
    437            `((setf (fdefinition ',*dd-copier*) #'copy-seq)))
     438           `((declaim (ftype (function (vector) vector) ,*dd-copier*))
     439             (setf (fdefinition ',*dd-copier*) #'copy-seq)))
    438440          (t
    439            `((setf (fdefinition ',*dd-copier*) #'copy-structure))))))
     441           `((declaim (ftype (function (T) T) ,*dd-copier*))
     442             (setf (fdefinition ',*dd-copier*) #'copy-structure))))))
    440443
    441444(defun define-print-function ()
Note: See TracChangeset for help on using the changeset viewer.