bug#48658: Elisp lexer misreads ESC in escape sequence form

Ivan Sokolov <[email protected]>
Newsgroups gmane.lisp.guile.bugs
Message-ID <[email protected]>
Hello,

I found that Elisp lexer interprets Elisp escape sequence for ESC as
something different. The backtrace I got eralier (not present here)
points to line 328 in language/elisp/lexer.scm, I think get-character is
wrong.

https://git.savannah.gnu.org/cgit/guile.git/tree/module/language/elisp/lexer.scm?h=v3.0.7#n328

Emacs:
----------------
*** Welcome to IELM ***  Type (describe-mode) for help.
ELISP> emacs-version
"28.0.50"
ELISP> ?\C-a
1 (#o1, #x1, ?\C-a)
ELISP> "\C-a"
"^A"
ELISP> ?\C-\[
27 (#o33, #x1b, ?\C-\[)
ELISP> "\C-["
"^["
----------------

Guile:
----------------
GNU Guile 3.0.7
Copyright (C) 1995-2021 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
elisp@(guile-user)> ?\C-a
$1 = 1
elisp@(guile-user)> "\C-a"
$2 = "\x01"
elisp@(guile-user)> ?\C-\[
$3 = 67108955
elisp@(guile-user)> "\C-["
While reading expression:
In procedure integer->char: Argument 1 out of range: 67108955
elisp@(guile-user)>
----------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.