From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: =?UTF-8?Q?Cl=c3=a9ment_Pit--Claudel?= Newsgroups: gmane.emacs.devel Subject: Re: On removing some obsolete code from subr and core Date: Sat, 5 Nov 2016 11:51:15 -0400 Message-ID: <4193b655-b9e7-50bf-aefb-8c3bf73d496b@gmail.com> References: <878tsznpuq.fsf@udel.edu> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="qxg4PCucCOTXrOIIBeUmOvPQ00t1OURrJ" X-Trace: blaine.gmane.org 1478361106 12736 195.159.176.226 (5 Nov 2016 15:51:46 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 5 Nov 2016 15:51:46 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Nov 05 16:51:42 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c33Fo-0002EQ-W7 for ged-emacs-devel@m.gmane.org; Sat, 05 Nov 2016 16:51:37 +0100 Original-Received: from localhost ([::1]:51131 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c33Fr-0002qe-Vd for ged-emacs-devel@m.gmane.org; Sat, 05 Nov 2016 11:51:40 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35164) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c33Ff-0002mw-Gc for emacs-devel@gnu.org; Sat, 05 Nov 2016 11:51:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c33Fc-00051l-BB for emacs-devel@gnu.org; Sat, 05 Nov 2016 11:51:27 -0400 Original-Received: from mout.kundenserver.de ([212.227.126.130]:53385) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c33Fb-000507-V0 for emacs-devel@gnu.org; Sat, 05 Nov 2016 11:51:24 -0400 Original-Received: from [18.189.84.189] ([18.189.84.189]) by mrelayeu.kundenserver.de (mreue002) with ESMTPSA (Nemesis) id 0McMoZ-1cJkUP01Tz-00JaEq for ; Sat, 05 Nov 2016 16:51:22 +0100 In-Reply-To: <878tsznpuq.fsf@udel.edu> X-Provags-ID: V03:K0:r0b1RBRTm9hm7Bi+uQVHdZ6RA/vRqCGRBkqRbL1jsHQYrpY2CSb MvXECJdgZG2puAkomym0sg88biqctfvkKsYN+hrSU3G4gdQlPJkhIA0acHae8Q5A0y9xobN hN8AuEBq/CZEFFa5oUjUNhBFgYyLwSi4YHKIrcT2U+IUaqj+dxyI0iVsKToifOE94mkSuDE pC85y0PyR+AV1GBYTA1qw== X-UI-Out-Filterresults: notjunk:1;V01:K0:i5b0f9aVnmM=:ZwbzMBG21tjWMa3kKXv5dB DYOZ6FEZ5Ld1tKqY/4GNPDI/95aYgOpfMsxe0q/0kJnYAdOXmq4qYH/wtEUeQpvHrzUPmcKMb rt0liz4k980Rn/6a8nOWUT9NfJQ6jf0YjhObD1YqITWFnxEJ2Oueu6bQAGO41AX7zGafGKzrJ 9mt0QUrwLGTbRdpuLYu3+/fVKbsiIXqD702SemIccXg3dYIUmd7E1jbKaBDrF0JN1WLyS1IRy Lxw1Cz6pXsgjJx3f9PeQ7ezaNqor9TdxMudgjmB/UC9VXNGPQ9KhBR1vYKLh5UVc+LSL/fOOU 6/q3SpkqAPO8pjHP9dx5dQ44LbJeUjFE3M7MYU4MGJt92PDhFqIjCfC/fs96VNfyXUXxgvP2K 82Y/e8cRrKOQlVEugAdUVEt81xlwwCt1aPw3+hXxuj99xXYQ+CNI/+JWzKQwGs+KNegf+G44l hkmVQ4O26jeI/JGRaZcR+Ygl9kUaa0UQsply9hkz8y0gcRSKzJEJd/d6e+KDik5zsqA3wHPyB QZKQVYkVj1dcR6QLn38UtclWWxGZ1LPJY/DFZcRbPdL4AUgl/PvrshJGGpT62ho/6KfupMArH 1/TNAUblSKnxC/3DVzQUYLh5v5Y7n0bOs0nqiKqU3jN+d4UFt8zN5S7CV105xxmop2uycDVI0 GwW9QGLGP0u5M0NKz0dhviL2DtiyHE45F1Zxi1T6QXGr5AInycy4l0KPrBxHqOa2Amr0= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.126.130 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:209185 Archived-At: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --qxg4PCucCOTXrOIIBeUmOvPQ00t1OURrJ Content-Type: multipart/mixed; boundary="grRQ0cAfbVUnMFxfD7qnPbaGcPplE6nfa"; protected-headers="v1" From: =?UTF-8?Q?Cl=c3=a9ment_Pit--Claudel?= To: emacs-devel@gnu.org Message-ID: <4193b655-b9e7-50bf-aefb-8c3bf73d496b@gmail.com> Subject: Re: On removing some obsolete code from subr and core References: <878tsznpuq.fsf@udel.edu> In-Reply-To: <878tsznpuq.fsf@udel.edu> --grRQ0cAfbVUnMFxfD7qnPbaGcPplE6nfa Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable It would be nice if we could set up completion to stop offering obsolete = functions; this might help prevent them from getting added to new code. On 2016-11-04 12:59, Mark Oteiza wrote: >=20 > Hi, >=20 > I was eyeing some code in subr.el that deprecated in 22, and was > wondering if there is any concern with ripping it out. In particular, > the bits included in the following patch. >=20 > The parts for buffer_defaults is incomplete of course, there are many > references to this structure. Just searching through, uses of > buffer_defaults look very easy to remove, but I may be missing somethin= g > subtle. >=20 > I removed references/uses of these functions/aliases/default-variables > in documentation and lisp in commit 2c6920a >=20 > diff --git a/lisp/subr.el b/lisp/subr.el > index fba43be..6a8911f 100644 > --- a/lisp/subr.el > +++ b/lisp/subr.el > @@ -1290,13 +1290,6 @@ posn-object-width-height > =0C > ;;;; Obsolescent names for functions. > =20 > -(define-obsolete-function-alias 'window-dot 'window-point "22.1") > -(define-obsolete-function-alias 'set-window-dot 'set-window-point "22.= 1") > -(define-obsolete-function-alias 'read-input 'read-string "22.1") > -(define-obsolete-function-alias 'show-buffer 'set-window-buffer "22.1"= ) > -(define-obsolete-function-alias 'eval-current-buffer 'eval-buffer "22.= 1") > -(define-obsolete-function-alias 'string-to-int 'string-to-number "22.1= ") > - > (make-obsolete 'forward-point "use (+ (point) N) instead." "23.1") > (make-obsolete 'buffer-has-markers-at nil "24.3") > =20 > @@ -1306,18 +1299,6 @@ 'string-to-int > (make-obsolete 'string-to-multibyte "use `decode-coding-string'." "25.= 2") > (make-obsolete 'string-as-multibyte "use `decode-coding-string'." "25.= 2") > =20 > -(defun insert-string (&rest args) > - "Mocklisp-compatibility insert function. > -Like the function `insert' except that any argument that is a number > -is converted into a string by expressing it in decimal." > - (declare (obsolete insert "22.1")) > - (dolist (el args) > - (insert (if (integerp el) (number-to-string el) el)))) > - > -(defun makehash (&optional test) > - (declare (obsolete make-hash-table "22.1")) > - (make-hash-table :test (or test 'eql))) > - > (defun log10 (x) > "Return (log X 10), the log base 10 of X." > (declare (obsolete log "24.4")) > @@ -1319,45 +1319,6 @@ 'unfocus-frame > =0C > ;;;; Obsolescence declarations for variables, and aliases. > =20 > -;; Special "default-FOO" variables which contain the default value of > -;; the "FOO" variable are nasty. Their implementation is brittle, and= > -;; slows down several unrelated variable operations; furthermore, they= > -;; can lead to really odd behavior if you decide to make them > -;; buffer-local. > - > -;; Not used at all in Emacs, last time I checked: > -(make-obsolete-variable 'default-mode-line-format > - "use (setq-default mode-line-format) or (defau= lt-value mode-line-format) instead" > - "23.2") > -(make-obsolete-variable 'default-header-line-format 'header-line-forma= t "23.2") > -(make-obsolete-variable 'default-line-spacing 'line-spacing "23.2") > -(make-obsolete-variable 'default-abbrev-mode 'abbrev-mode "23.2") > -(make-obsolete-variable 'default-ctl-arrow 'ctl-arrow "23.2") > -(make-obsolete-variable 'default-truncate-lines 'truncate-lines "23.2"= ) > -(make-obsolete-variable 'default-left-margin 'left-margin "23.2") > -(make-obsolete-variable 'default-tab-width 'tab-width "23.2") > -(make-obsolete-variable 'default-case-fold-search 'case-fold-search "2= 3.2") > -(make-obsolete-variable 'default-left-margin-width 'left-margin-width = "23.2") > -(make-obsolete-variable 'default-right-margin-width 'right-margin-widt= h "23.2") > -(make-obsolete-variable 'default-left-fringe-width 'left-fringe-width = "23.2") > -(make-obsolete-variable 'default-right-fringe-width 'right-fringe-widt= h "23.2") > -(make-obsolete-variable 'default-fringes-outside-margins 'fringes-outs= ide-margins "23.2") > -(make-obsolete-variable 'default-scroll-bar-width 'scroll-bar-width "2= 3.2") > -(make-obsolete-variable 'default-vertical-scroll-bar 'vertical-scroll-= bar "23.2") > -(make-obsolete-variable 'default-indicate-empty-lines 'indicate-empty-= lines "23.2") > -(make-obsolete-variable 'default-indicate-buffer-boundaries 'indicate-= buffer-boundaries "23.2") > -(make-obsolete-variable 'default-fringe-indicator-alist 'fringe-indica= tor-alist "23.2") > -(make-obsolete-variable 'default-fringe-cursor-alist 'fringe-cursor-al= ist "23.2") > -(make-obsolete-variable 'default-scroll-up-aggressively 'scroll-up-agg= ressively "23.2") > -(make-obsolete-variable 'default-scroll-down-aggressively 'scroll-down= -aggressively "23.2") > -(make-obsolete-variable 'default-fill-column 'fill-column "23.2") > -(make-obsolete-variable 'default-cursor-type 'cursor-type "23.2") > -(make-obsolete-variable 'default-cursor-in-non-selected-windows 'curso= r-in-non-selected-windows "23.2") > -(make-obsolete-variable 'default-buffer-file-coding-system 'buffer-fil= e-coding-system "23.2") > -(make-obsolete-variable 'default-major-mode 'major-mode "23.2") > -(make-obsolete-variable 'default-enable-multibyte-characters > - "use enable-multibyte-characters or set-buffer-multibyte instead= " "23.2") > - > (make-obsolete-variable 'define-key-rebound-commands nil "23.2") > (make-obsolete-variable 'redisplay-end-trigger-functions 'jit-lock-reg= ister "23.1") > (make-obsolete-variable 'deferred-action-list 'post-command-hook "24.1= ") > diff --git a/src/buffer.c b/src/buffer.c > index 3d205bb..aa556b7 100644 > --- a/src/buffer.c > +++ b/src/buffer.c > @@ -5413,144 +5413,6 @@ syms_of_buffer (void) > Fput (Qprotected_field, Qerror_message, > build_pure_c_string ("Attempt to modify a protected field")); > =20 > - DEFVAR_BUFFER_DEFAULTS ("default-mode-line-format", > - mode_line_format, > - doc: /* Default value of `mode-line-format' for buffers that don'= t override it. > -This is the same as (default-value \\=3D'mode-line-format). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-header-line-format", > - header_line_format, > - doc: /* Default value of `header-line-format' for buffers that do= n't override it. > -This is the same as (default-value \\=3D'header-line-format). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-cursor-type", cursor_type, > - doc: /* Default value of `cursor-type' for buffers that don't ove= rride it. > -This is the same as (default-value \\=3D'cursor-type). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-line-spacing", > - extra_line_spacing, > - doc: /* Default value of `line-spacing' for buffers that don't ov= erride it. > -This is the same as (default-value \\=3D'line-spacing). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-cursor-in-non-selected-windows", > - cursor_in_non_selected_windows, > - doc: /* Default value of `cursor-in-non-selected-windows'. > -This is the same as (default-value \\=3D'cursor-in-non-selected-window= s). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-abbrev-mode", > - abbrev_mode, > - doc: /* Default value of `abbrev-mode' for buffers that do not ov= erride it. > -This is the same as (default-value \\=3D'abbrev-mode). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-ctl-arrow", > - ctl_arrow, > - doc: /* Default value of `ctl-arrow' for buffers that do not over= ride it. > -This is the same as (default-value \\=3D'ctl-arrow). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-enable-multibyte-characters", > - enable_multibyte_characters, > - doc: /* Default value of `enable-multibyte-characters' for buffer= s not overriding it. > -This is the same as (default-value \\=3D'enable-multibyte-characters).= */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-buffer-file-coding-system", > - buffer_file_coding_system, > - doc: /* Default value of `buffer-file-coding-system' for buffers = not overriding it. > -This is the same as (default-value \\=3D'buffer-file-coding-system). = */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-truncate-lines", > - truncate_lines, > - doc: /* Default value of `truncate-lines' for buffers that do not= override it. > -This is the same as (default-value \\=3D'truncate-lines). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-fill-column", > - fill_column, > - doc: /* Default value of `fill-column' for buffers that do not ov= erride it. > -This is the same as (default-value \\=3D'fill-column). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-left-margin", > - left_margin, > - doc: /* Default value of `left-margin' for buffers that do not ov= erride it. > -This is the same as (default-value \\=3D'left-margin). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-tab-width", > - tab_width, > - doc: /* Default value of `tab-width' for buffers that do not over= ride it. > -NOTE: This controls the display width of a TAB character, and not > -the size of an indentation step. > -This is the same as (default-value \\=3D'tab-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-case-fold-search", > - case_fold_search, > - doc: /* Default value of `case-fold-search' for buffers that don'= t override it. > -This is the same as (default-value \\=3D'case-fold-search). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-left-margin-width", > - left_margin_cols, > - doc: /* Default value of `left-margin-width' for buffers that don= 't override it. > -This is the same as (default-value \\=3D'left-margin-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-right-margin-width", > - right_margin_cols, > - doc: /* Default value of `right-margin-width' for buffers that do= n't override it. > -This is the same as (default-value \\=3D'right-margin-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-left-fringe-width", > - left_fringe_width, > - doc: /* Default value of `left-fringe-width' for buffers that don= 't override it. > -This is the same as (default-value \\=3D'left-fringe-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-right-fringe-width", > - right_fringe_width, > - doc: /* Default value of `right-fringe-width' for buffers that do= n't override it. > -This is the same as (default-value \\=3D'right-fringe-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-fringes-outside-margins", > - fringes_outside_margins, > - doc: /* Default value of `fringes-outside-margins' for buffers th= at don't override it. > -This is the same as (default-value \\=3D'fringes-outside-margins). */= ); > - > - DEFVAR_BUFFER_DEFAULTS ("default-scroll-bar-width", > - scroll_bar_width, > - doc: /* Default value of `scroll-bar-width' for buffers that don'= t override it. > -This is the same as (default-value \\=3D'scroll-bar-width). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-vertical-scroll-bar", > - vertical_scroll_bar_type, > - doc: /* Default value of `vertical-scroll-bar' for buffers that d= on't override it. > -This is the same as (default-value \\=3D'vertical-scroll-bar). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-indicate-empty-lines", > - indicate_empty_lines, > - doc: /* Default value of `indicate-empty-lines' for buffers that = don't override it. > -This is the same as (default-value \\=3D'indicate-empty-lines). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-indicate-buffer-boundaries", > - indicate_buffer_boundaries, > - doc: /* Default value of `indicate-buffer-boundaries' for buffers= that don't override it. > -This is the same as (default-value \\=3D'indicate-buffer-boundaries). = */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-fringe-indicator-alist", > - fringe_indicator_alist, > - doc: /* Default value of `fringe-indicator-alist' for buffers tha= t don't override it. > -This is the same as (default-value \\=3D'fringe-indicator-alist). */)= ; > - > - DEFVAR_BUFFER_DEFAULTS ("default-fringe-cursor-alist", > - fringe_cursor_alist, > - doc: /* Default value of `fringe-cursor-alist' for buffers that d= on't override it. > -This is the same as (default-value \\=3D'fringe-cursor-alist). */); > - > - DEFVAR_BUFFER_DEFAULTS ("default-scroll-up-aggressively", > - scroll_up_aggressively, > - doc: /* Default value of `scroll-up-aggressively'. > -This value applies in buffers that don't have their own local values. > -This is the same as (default-value \\=3D'scroll-up-aggressively). */)= ; > - > - DEFVAR_BUFFER_DEFAULTS ("default-scroll-down-aggressively", > - scroll_down_aggressively, > - doc: /* Default value of `scroll-down-aggressively'. > -This value applies in buffers that don't have their own local values. > -This is the same as (default-value \\=3D'scroll-down-aggressively). *= /); > - > DEFVAR_PER_BUFFER ("header-line-format", > &BVAR (current_buffer, header_line_format), > Qnil, > @@ -5621,9 +5483,6 @@ A string is printed verbatim in the mode line exc= ept for %-constructs: > %% -- print %. %- -- print infinitely many dashes. > Decimal digits after the % specify field width to which to pad. */); > =20 > - DEFVAR_BUFFER_DEFAULTS ("default-major-mode", major_mode, > - doc: /* Value of `major-mode' for new buffers. */); > - > DEFVAR_PER_BUFFER ("major-mode", &BVAR (current_buffer, major_mode),= > Qsymbolp, > doc: /* Symbol for current buffer's major mode. > diff --git a/src/lisp.h b/src/lisp.h > index 2e46592..aaa4423 100644 > --- a/src/lisp.h > +++ b/src/lisp.h > @@ -3035,12 +3035,6 @@ extern void defvar_kboard (struct Lisp_Kboard_Ob= jfwd *, const char *, int); > defvar_int (&i_fwd, lname, &globals.f_ ## vname); \ > } while (false) > =20 > -#define DEFVAR_BUFFER_DEFAULTS(lname, vname, doc) \ > - do { \ > - static struct Lisp_Objfwd o_fwd; \ > - defvar_lisp_nopro (&o_fwd, lname, &BVAR (&buffer_defaults, vname))= ; \ > - } while (false) > - > #define DEFVAR_KBOARD(lname, vname, doc) \ > do { \ > static struct Lisp_Kboard_Objfwd ko_fwd; \ >=20 >=20 --grRQ0cAfbVUnMFxfD7qnPbaGcPplE6nfa-- --qxg4PCucCOTXrOIIBeUmOvPQ00t1OURrJ Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJYHf/4AAoJEPqg+cTm90wjBGQQALN2VoiHe/LF4gIVLIkYjVxY YCn6xbS1h4abDpn5qPGFBbg74dfhvEamfrzeKaMUQSuITe02scxtPGjmbpoHtSvz 1QaabKCQl+YBuoZkHSfSNgL1tOw688yR8ECVxxu7L2fviMs93MuwccaJ3MCSjdny kVgXWvgTFLMb3PCC+X8rUemds2TWn2Hhk2Lt0SgOo0hkZ85AFVmEHnqGyYVhRYuF WwvkgFlwthLqf75N8iXrMA79ihTOvNULWZDEmdVwV9IhlrxeFno/RfgiKS23e8X2 TMrM8ZLj0bfQw3ykb/2XR5onG8zwpP1XpQE5PP568vB0W19J4yhk5mL7hRqRZlaN z++nx5b4/+fs/8JOnQj4HgChI2BPOf4+BkCDM0L9RS02wX2UGAS7H4xmUI+hY6ka PtST6kggpe1QfAOhdT49MfRdyEiTItNLJaOoIi8e8tc50s0D3h8FXROheHvCWN3A RowwfGO8Vfj7TM8Qr0UlLFdcmAsvnPldFwCCEdSDcMy6aht4LLDKvo5jcX1Yvtx5 hrF4DNCGFL393pjZkaUTeyijXaaeOUf3EAOlP11wzwRZiQGIuEx0VuzZrHK/u6c7 ErCDBR4IAhrUF8/7Zpn1Z2t8dA/R8vCxe5SC28TaCkpmPakHY9bA+O0fDu5E0U1u V8L03Vtp5AKFI2tIl8Qp =HKBb -----END PGP SIGNATURE----- --qxg4PCucCOTXrOIIBeUmOvPQ00t1OURrJ--