From 930338ee280553fbcd2fffc75c7bde82e2489e17 Mon Sep 17 00:00:00 2001 From: wlott <wlott> Date: Tue, 21 Aug 1990 14:58:38 +0000 Subject: [PATCH] When generating the defknown for setf functions, put the arguments in the correct order. --- compiler/generic/vm-fndb.lisp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/compiler/generic/vm-fndb.lisp b/compiler/generic/vm-fndb.lisp index a668a0813..dfe5ec689 100644 --- a/compiler/generic/vm-fndb.lisp +++ b/compiler/generic/vm-fndb.lisp @@ -7,7 +7,7 @@ ;;; Scott Fahlman (FAHLMAN@CMUC). ;;; ********************************************************************** ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.22 1990/08/15 02:54:50 wlott Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-fndb.lisp,v 1.23 1990/08/21 14:58:38 wlott Exp $ ;;; ;;; This file defines the machine specific function signatures. ;;; @@ -227,7 +227,12 @@ name (vm:primitive-object-name obj)))) (when set-known (if set-trans - (forms `(defknown (,set-trans) (,obj-type ,slot-type) + (forms `(defknown (,set-trans) + ,(if (and (listp set-trans) + (= (length set-trans) 2) + (eq (car set-trans) 'setf)) + (list slot-type obj-type) + (list obj-type slot-type)) ,slot-type ,set-known)) (error "Can't spec a :set-known with no :set-trans. ~S in ~S" name (vm:primitive-object-name obj))))))) -- GitLab