]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/emacs-lisp/cl-lib.el (cl-old-struct-compat-mode): Mark as obsolete
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 5 Sep 2023 16:56:13 +0000 (12:56 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 5 Sep 2023 16:56:24 +0000 (12:56 -0400)
* lisp/emacs-lisp/cl-preloaded.el: Emit a message before enabling
`cl-old-struct-compat-mode`.

See bug#63282.

etc/NEWS
lisp/emacs-lisp/cl-lib.el
lisp/emacs-lisp/cl-preloaded.el

index fbb13254e6498d0d4a785cf388b13ba99ea454cf..a68e67e0694bf4208800753910637eb07e84a191 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -882,6 +882,9 @@ Use 'define-minor-mode' and 'define-globalized-minor-mode' instead.
 See the "(elisp) Porting Old Advice" node for help converting them
 to use 'advice-add' or 'define-advice' instead.
 
+** 'cl-old-struct-compat-mode' is marked as obsolete.
+You may need to recompile our code if it was compiled with Emacs<24.3.
+
 +++
 ** New macro 'static-if' for conditional evaluation of code.
 This macro hides a form from the evaluator or byte-compiler based on a
index 83396dabc1a647b8e9347df46f1bb5ff188bf89d..f4c1ac85b1386f07fc7367814a72ec40efd5c6d1 100644 (file)
@@ -571,6 +571,7 @@ of record objects."
     (advice-add 'type-of :around #'cl--old-struct-type-of))
    (t
     (advice-remove 'type-of #'cl--old-struct-type-of))))
+(make-obsolete 'cl-old-struct-compat-mode nil "30.1")
 
 (defun cl-constantly (value)
   "Return a function that takes any number of arguments, but returns VALUE."
index f410270d3402ac46d66604a6ce337444d85837bb..676326980aad416992a0e1aeead9bf01d3de9fd1 100644 (file)
@@ -159,7 +159,9 @@ supertypes from the most specific to least specific.")
   (cl-check-type name (satisfies cl--struct-name-p))
   (unless type
     ;; Legacy defstruct, using tagged vectors.  Enable backward compatibility.
-    (cl-old-struct-compat-mode 1))
+    (with-suppressed-warnings ((obsolete cl-old-struct-compat-mode))
+      (message "cl-old-struct-compat-mode is obsolete!")
+      (cl-old-struct-compat-mode 1)))
   (if (eq type 'record)
       ;; Defstruct using record objects.
       (setq type nil))