Subject: bug#30788: 27.0.50; Getting 'char-displayable-p: Invalid hash table rehash size: 1.0' when starting emacs -Q

From: Ulrich Mueller <[email-masked]>
Date: Tue, 13 Mar 2018 19:58:13 +0100

>>>>> On Tue, 13 Mar 2018, Eli Zaretskii wrote:

> Start Emacs under GDB, put a breakpoint in Fmake_hash_table, where it
> signals this error (line 4530 of fns.c in today's master), then run
> Emacs with "run -Q", and when the breakpoint breaks, type "xbacktrace"
> at the GDB prompt, and post the results here.

This is what I get with this recipe for the current tip of the master
branch (commit 06911714ef):

Thread 1 "emacs-27-vcs" hit Breakpoint 3, Fmake_hash_table (
    nargs=nargs@entry=10, args=args@entry=0x7ffffffe3670) at
    fns.c:4530
4530        signal_error ("Invalid hash table rehash size", args[i]);
(gdb) xbacktrace
"read" (0xffffc188)
"char-displayable-p" (0xffffc508)
"startup--setup-quote-display" (0xffffc820)
"command-line" (0xffffd0b8)
"normal-top-level" (0xffffd460)

Note that the error occurs with LC_ALL=de_DE.UTF-8, whereas with
LC_ALL=C or even LC_ALL=en_US.UTF-8 all seems to be fine.

With Emacs 25.3 I get the following, after typing (list-packages) C-j
in the scratch buffer (again, with de_DE.UTF-8 locale):

Debugger entered--Lisp error: (error "Invalid hash table rehash size" 1.0)
  read(#<buffer  *load*>)
  eval-buffer(#<buffer  *load*> nil "/usr/share/emacs/25.3/lisp/finder-inf.el" nil t)  ; Reading at buffer position 39098
  load-with-code-conversion("/usr/share/emacs/25.3/lisp/finder-inf.el" "/usr/share/emacs/25.3/lisp/finder-inf.el" t t)
  require(finder-inf nil t)
  list-packages()
  eval((list-packages) nil)
  elisp--eval-last-sexp(t)
  eval-last-sexp(t)
  eval-print-last-sexp(nil)
  funcall-interactively(eval-print-last-sexp nil)
  call-interactively(eval-print-last-sexp nil nil)
  command-execute(eval-print-last-sexp)