* bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar
@ 2016-11-30 19:20 Gemini Lasswell
2017-02-04 11:27 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Gemini Lasswell @ 2016-11-30 19:20 UTC (permalink / raw)
To: 25077
The Edebug spec for c-lang-defvar doesn't allow for the use of
'dont-doc, which prevents the use of Edebug and Testcover on
cc-langs.el.
To reproduce, using emacs -Q starting at the root of the Emacs
sources:
M-: (require 'cc-langs) RET
C-x C-f lisp/progmodes/cc-langs.el RET
C-s dont-doc RET
C-u C-M-x
Result: edebug-syntax-error: Invalid read syntax: stringp, "failed"
I tried this change to the Edebug spec for c-lang-defvar, and it makes
Edebug work on all the c-lang-defvar uses in this file:
(def-edebug-spec c-lang-defvar
(&define name def-form &optional &or ("quote" "dont-doc") stringp))
Alternatively, the 'dont-doc could be removed from the 7 places it is
used. The majority of c-lang-defvar calls simply omit the docstring,
and the code in c-lang-defvar is not doing any checking for dont-doc,
it simply ignores that parameter if it is not a string.
In GNU Emacs 25.1.1 (x86_64-apple-darwin15.6.0, NS appkit-1404.47 Version 10.11.6 (Build 15G1004))
of 2016-10-09 built on rainbow.local
Windowing system distributor 'Apple', version 10.3.1404
Configured using:
'configure --disable-dependency-tracking --disable-silent-rules
--enable-locallisppath=/usr/local/share/emacs/site-lisp
--infodir=/usr/local/Cellar/emacs/25.1/share/info/emacs
--prefix=/usr/local/Cellar/emacs/25.1 --without-x --with-xml2
--without-dbus --with-gnutls --with-imagemagick --with-rsvg --with-ns
--disable-ns-self-contained'
Configured features:
JPEG RSVG IMAGEMAGICK NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS
NS
Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Emacs-Lisp
Minor modes in effect:
diff-auto-refine-mode: t
tooltip-mode: t
global-eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
cc-langs
Mark saved where search started
edebug-syntax-error: Invalid read syntax: stringp, "failed"
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message dired format-spec rfc822 mml
mml-sec password-cache epg epg-config gnus-util mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail
rfc2047 rfc2045 ietf-drums mm-util help-fns help-mode mail-prsvr
mail-utils edebug misearch multi-isearch vc-git diff-mode easymenu
easy-mmode cc-langs cc-vars cc-defs cl-loaddefs pcase cl-lib time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel ns-win ucs-normalize term/common-win tool-bar dnd
fontset image regexp-opt fringe tabulated-list newcomment elisp-mode
lisp-mode prog-mode register page menu-bar rfn-eshadow timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame
cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai
tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote kqueue cocoa ns
multi-tty make-network-process emacs)
Memory information:
((conses 16 213456 7451)
(symbols 48 21513 0)
(miscs 40 56 248)
(strings 32 20403 6753)
(string-bytes 1 591046)
(vectors 16 35188)
(vector-slots 8 670702 4578)
(floats 8 164 167)
(intervals 56 443 37)
(buffers 976 18))
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar
2016-11-30 19:20 bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar Gemini Lasswell
@ 2017-02-04 11:27 ` Eli Zaretskii
2017-02-04 16:23 ` Alan Mackenzie
2017-02-18 16:10 ` Alan Mackenzie
0 siblings, 2 replies; 4+ messages in thread
From: Eli Zaretskii @ 2017-02-04 11:27 UTC (permalink / raw)
To: Gemini Lasswell, Alan Mackenzie; +Cc: 25077
> From: Gemini Lasswell <gazally@runbox.com>
> Date: Wed, 30 Nov 2016 11:20:28 -0800
>
> The Edebug spec for c-lang-defvar doesn't allow for the use of
> 'dont-doc, which prevents the use of Edebug and Testcover on
> cc-langs.el.
>
> To reproduce, using emacs -Q starting at the root of the Emacs
> sources:
>
> M-: (require 'cc-langs) RET
> C-x C-f lisp/progmodes/cc-langs.el RET
> C-s dont-doc RET
> C-u C-M-x
>
> Result: edebug-syntax-error: Invalid read syntax: stringp, "failed"
>
> I tried this change to the Edebug spec for c-lang-defvar, and it makes
> Edebug work on all the c-lang-defvar uses in this file:
>
> (def-edebug-spec c-lang-defvar
> (&define name def-form &optional &or ("quote" "dont-doc") stringp))
>
> Alternatively, the 'dont-doc could be removed from the 7 places it is
> used. The majority of c-lang-defvar calls simply omit the docstring,
> and the code in c-lang-defvar is not doing any checking for dont-doc,
> it simply ignores that parameter if it is not a string.
Alan, could you please look into this?
Thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar
2017-02-04 11:27 ` Eli Zaretskii
@ 2017-02-04 16:23 ` Alan Mackenzie
2017-02-18 16:10 ` Alan Mackenzie
1 sibling, 0 replies; 4+ messages in thread
From: Alan Mackenzie @ 2017-02-04 16:23 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: Gemini Lasswell, 25077
Hello, Eli.
On Sat, Feb 04, 2017 at 13:27:45 +0200, Eli Zaretskii wrote:
> > From: Gemini Lasswell <gazally@runbox.com>
> > Date: Wed, 30 Nov 2016 11:20:28 -0800
> >
> > The Edebug spec for c-lang-defvar doesn't allow for the use of
> > 'dont-doc, which prevents the use of Edebug and Testcover on
> > cc-langs.el.
> >
> > To reproduce, using emacs -Q starting at the root of the Emacs
> > sources:
> >
> > M-: (require 'cc-langs) RET
> > C-x C-f lisp/progmodes/cc-langs.el RET
> > C-s dont-doc RET
> > C-u C-M-x
> >
> > Result: edebug-syntax-error: Invalid read syntax: stringp, "failed"
> >
> > I tried this change to the Edebug spec for c-lang-defvar, and it makes
> > Edebug work on all the c-lang-defvar uses in this file:
> >
> > (def-edebug-spec c-lang-defvar
> > (&define name def-form &optional &or ("quote" "dont-doc") stringp))
> >
> > Alternatively, the 'dont-doc could be removed from the 7 places it is
> > used. The majority of c-lang-defvar calls simply omit the docstring,
> > and the code in c-lang-defvar is not doing any checking for dont-doc,
> > it simply ignores that parameter if it is not a string.
> Alan, could you please look into this?
Yes, I will.
> Thanks.
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar
2017-02-04 11:27 ` Eli Zaretskii
2017-02-04 16:23 ` Alan Mackenzie
@ 2017-02-18 16:10 ` Alan Mackenzie
1 sibling, 0 replies; 4+ messages in thread
From: Alan Mackenzie @ 2017-02-18 16:10 UTC (permalink / raw)
To: Gemini Lasswell, Eli Zaretskii; +Cc: 25077-done
Hello, Gemini and Eli.
On Sat, Feb 04, 2017 at 13:27:45 +0200, Eli Zaretskii wrote:
> > From: Gemini Lasswell <gazally@runbox.com>
> > Date: Wed, 30 Nov 2016 11:20:28 -0800
> > The Edebug spec for c-lang-defvar doesn't allow for the use of
> > 'dont-doc, which prevents the use of Edebug and Testcover on
> > cc-langs.el.
> > To reproduce, using emacs -Q starting at the root of the Emacs
> > sources:
> > M-: (require 'cc-langs) RET
> > C-x C-f lisp/progmodes/cc-langs.el RET
> > C-s dont-doc RET
> > C-u C-M-x
> > Result: edebug-syntax-error: Invalid read syntax: stringp, "failed"
> > I tried this change to the Edebug spec for c-lang-defvar, and it makes
> > Edebug work on all the c-lang-defvar uses in this file:
> > (def-edebug-spec c-lang-defvar
> > (&define name def-form &optional &or ("quote" "dont-doc") stringp))
Thanks, both for reporting this bug and for fixing it. :-)
> > Alternatively, the 'dont-doc could be removed from the 7 places it is
> > used. The majority of c-lang-defvar calls simply omit the docstring,
> > and the code in c-lang-defvar is not doing any checking for dont-doc,
> > it simply ignores that parameter if it is not a string.
After some consideration, I amended the edebug-spec like you suggested,
but also removed the two occurrences of 'dont-doc which had no effect.
I've committed the change to master, and I'm closing this bug as fixed.
> Alan, could you please look into this?
> Thanks.
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-02-18 16:10 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-30 19:20 bug#25077: 25.1; Incorrect Edebug spec for c-lang-defvar Gemini Lasswell
2017-02-04 11:27 ` Eli Zaretskii
2017-02-04 16:23 ` Alan Mackenzie
2017-02-18 16:10 ` Alan Mackenzie
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).