From ab7f1c43dc6a0d14584d1c2f9380cc34217a7696 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Mon, 5 Nov 2012 21:22:07 -0500 Subject: [PATCH] Undocument get-setf-method, no longer exists * doc/misc/cl.texi (Obsolete Setf Customization): Undocument get-setf-method, since it no longer exists. * etc/NEWS: Mention this. --- doc/misc/ChangeLog | 1 + doc/misc/cl.texi | 19 ++++++++++--------- etc/NEWS | 7 +++++++ 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index c182cb04b6c..1e7cb4e7093 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -2,6 +2,7 @@ * cl.texi (Obsolete Setf Customization): Move note on lack of setf functions to lispref/variables.texi. + Undocument get-setf-method, since it no longer exists. 2012-11-03 Glenn Morris diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index a8cc2e47406..9d129ee79b2 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi @@ -4948,9 +4948,7 @@ Note that @code{&key} is not allowed in @var{arglist}, but Most of the modify macros defined by Common Lisp do not exactly follow the pattern of @code{define-modify-macro}. For example, @code{push} takes its arguments in the wrong order, and @code{pop} -is completely irregular. You can define these macros ``by hand'' -using @code{get-setf-method}, or consult the source -to see how to use the internal @code{setf} building blocks. +is completely irregular. @end defmac @defmac defsetf access-fn update-fn @@ -5078,6 +5076,8 @@ turn out to be unnecessary, so there is little reason for the setf-method itself to optimize. @end defmac +@c Removed in Emacs 24.3, not possible to make a compatible replacement. +@ignore @defun get-setf-method place &optional env This function returns the setf-method for @var{place}, by invoking the definition previously recorded by @code{defsetf} @@ -5085,12 +5085,12 @@ or @code{define-setf-method}. The result is a list of five values as described above. You can use this function to build your own @code{cl-incf}-like modify macros. @c These no longer exist. -@ignore -(Actually, it is better to use the internal functions -@code{cl-setf-do-modify} and @code{cl-setf-do-store}, which are a bit -easier to use and which also do a number of optimizations; consult the -source code for the @code{cl-incf} function for a simple example.) -@end ignore +@c +@c (Actually, it is better to use the internal functions +@c @code{cl-setf-do-modify} and @code{cl-setf-do-store}, which are a bit +@c easier to use and which also do a number of optimizations; consult the +@c source code for the @code{cl-incf} function for a simple example.) +@c The argument @var{env} specifies the ``environment'' to be passed on to @code{macroexpand} if @code{get-setf-method} should @@ -5104,6 +5104,7 @@ See also the source code for the setf-method for @code{substring}, which works by calling @code{get-setf-method} on a simpler case, then massaging the result. @end defun +@end ignore @node GNU Free Documentation License diff --git a/etc/NEWS b/etc/NEWS index c9c68513a8b..be5de734636 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -722,6 +722,13 @@ third argument is a frame (that usage was obsolete since Emacs 22.2). but keywords or keyword-string pairs. The old argument list will still be supported for Emacs 24.x. ++++ +** The CL package's `get-setf-method' function no longer exists. +Generalized variables are now part of core Emacs Lisp, and implemented +differently to the way cl.el used to do it. It is not possible to +define a compatible replacement for `get-setf-method'. See the file +gv.el for internal details of the new implementation. + ** Spelling changes. Some Lisp symbols have been renamed to avoid problems with spelling that is incorrect or inconsistent with how Emacs normally spells a word. -- 2.39.5