GNU bug report logs -
#27726
26.0.50; plist functions give confusing errors on invalid plists
Previous Next
Reported by: Lars Ingebrigtsen <larsi <at> gnus.org>
Date: Sun, 16 Jul 2017 19:51:01 UTC
Severity: normal
Found in version 26.0.50
Done: Philipp Stephani <p.stephani2 <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#27726: 26.0.50; plist functions give confusing errors on invalid plists
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 27726 <at> debbugs.gnu.org.
--
27726: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=27726
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> schrieb am Sa., 2. Sep. 2017 um 14:46 Uhr:
> unblock 24655 by 27726
> thanks
>
> > From: Lars Ingebrigtsen <larsi <at> gnus.org>
> > Date: Sun, 16 Jul 2017 21:50:27 +0200
> >
> >
> > (plist-put '(:foo 1 :bar) :zot 2)
> >
> > Debugger entered--Lisp error: (wrong-type-argument listp (:foo 1 :bar))
> > plist-put((:foo 1 :bar) :zot 2)
> > eval((plist-put '(:foo 1 :bar) :zot 2) nil)
> > elisp--eval-last-sexp(nil)
> > eval-last-sexp(nil)
> > funcall-interactively(eval-last-sexp nil)
> > call-interactively(eval-last-sexp nil nil)
> > command-execute(eval-last-sexp)
> >
> > The error seems to say that '(:foo 1 :bar) isn't a list. But the
> > problem is that it's not a valid plist, since it has an odd number of
> > elements.
> >
> > So I think there should be a different error being signalled here. (And
> > there isn't really a backwards compatibility issue here of introducing a
> > new error symbol: Emacs 26.1 started signalling errors for these lists;
> > previously it was fine having odd plists.)
>
> Would someone please look into this bug?
>
I've installed commit 71766a45f1 to improve the message.
[Message part 4 (text/html, inline)]
[Message part 5 (message/rfc822, inline)]
(plist-put '(:foo 1 :bar) :zot 2)
Debugger entered--Lisp error: (wrong-type-argument listp (:foo 1 :bar))
plist-put((:foo 1 :bar) :zot 2)
eval((plist-put '(:foo 1 :bar) :zot 2) nil)
elisp--eval-last-sexp(nil)
eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
call-interactively(eval-last-sexp nil nil)
command-execute(eval-last-sexp)
The error seems to say that '(:foo 1 :bar) isn't a list. But the
problem is that it's not a valid plist, since it has an odd number of
elements.
So I think there should be a different error being signalled here. (And
there isn't really a backwards compatibility issue here of introducing a
new error symbol: Emacs 26.1 started signalling errors for these lists;
previously it was fine having odd plists.)
In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
of 2017-07-16 built on mouse
Repository revision: 45892db6f53cccc045da9c7215b467617c067f04
Windowing system distributor 'The X.Org Foundation', version 11.0.11903000
System Description: Ubuntu 17.04
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
This bug report was last modified 7 years and 318 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.