[Ecls-list] patch: inline declarations and proclamations for setf functions
Josh Elsasser
josh at elsasser.org
Sat Aug 30 20:54:29 UTC 2008
The following patch allows inline and notinline declarations for setf
functions, and prevents notinline declamations and proclamations for
setf functions from being ignored.
--- src/cmp/cmpenv.lsp
+++ src/cmp/cmpenv.lsp
@@ -166,7 +166,7 @@
(not (or ; (compiler-<push-events)
;(>= *debug* 2) Breaks compilation of STACK-PUSH-VALUES
(member fname *notinline* :test #'same-fname-p)
- (and (symbolp fname) (get-sysprop fname 'CMP-NOTINLINE)))))
+ (get-sysprop fname 'CMP-NOTINLINE))))
#-:CCL
(defun proclaim (decl &aux decl-name)
@@ -407,13 +407,13 @@
(INLINE
(push decl dl)
(dolist (fun (cdr decl))
- (if (symbolp fun)
+ (if (si::valid-function-name-p fun)
(setq *notinline* (remove fun *notinline*))
(cmperr "Not a valid function name ~s in declaration ~s" fun decl))))
(NOTINLINE
(push decl dl)
(dolist (fun (cdr decl))
- (if (symbolp fun)
+ (if (si::valid-function-name-p fun)
(push fun *notinline*)
(cmperr "Not a valid function name ~s in declaration ~s" fun decl))))
(DECLARATION
More information about the ecl-devel
mailing list