Subject: Re: bug#40702: 28.0.50; (what-cursor-position) barfs on non-ASCII char

From: Eli Zaretskii <[email-masked]>
Date: Sun, 19 Apr 2020 19:50:10 +0300

> From: Štěpán Němec <[email-masked]>
> Cc: [email-masked],  [email-masked], Stefan Monnier
>  <[email-masked]>
> Date: Sun, 19 Apr 2020 18:18:13 +0200
> 
> >   Debugger entered--Lisp error: (cl-assertion-failed ((not (multibyte-string-p str)) nil))
> >     cl--assertion-failed((not (multibyte-string-p str)))
> >     encoded-string-description(#("é" 0 1 (charset unicode)) nil)
> >     describe-char(146)
> >     what-cursor-position((4))
> >     funcall-interactively(what-cursor-position (4))
> >     call-interactively(what-cursor-position nil nil)
> >     command-execute(what-cursor-position)
> 
> Thanks. I was looking at all the wrong places. The problem was simply
> introduced by the addition of the assert in
> 
> 2019-05-28T20:59:35-04:[email-masked]
> 146486f8a6 (* mule-cmds.el (encoded-string-description): Require unibyte string as input)
> https://git.sv.gnu.org/cgit/emacs.git/commit/?id=146486f8a6
> 
> Removing the assertion reverts to the Emacs 26 behaviour.
> 
> Unfortunately there is no explanation regarding the change. Maybe Stefan
> could provide some insight?

Could the discussion below provide such an explanation?

  https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00949.html