Subject: intern-soft C code: Empty *Summary* buffer, wrong argument type

From: Spenser Truex <[email-masked]>
Date: Tue, 18 Jun 2019 23:41:31 -0700

Hello! I tried the latest Emacs and broke my Gnus.

Tried with emacs -Q, and with a brand new user. Same results for nnimap and
nntp. When in the *Group* buffer, Gnus is able to retrieve news, but can't open
it. Upon pressing RET on a group, a *Summary* buffer is opened in the
background, but without any contents. Gnus commands in that *Summary* buffer
make errors, but the same one.

After digging around for a bit, it looks like intern-soft in the C code might be
causing the problem. Another issue I haven't been able to reproduce was
intern-soft returning NIL when an integer-or-marker-p was expected. In the
backtrace it is receiving wrong arguments.

After trying to open a group:
---------------------------------------------------------------------------- in
the *Messages* Buffer gnus-request-group: Wrong type argument: vectorp,
#s(hash-table size 9 test equal ...)  Gnus v5.13 GNU Emacs 27.0.50 (build 4,
x86_64-pc-linux-gnu, GTK+ Version 3.24.1) of 2019-06-18

*Backtrace*
Debugger entered--Lisp error: (wrong-type-argument vectorp #<hash-table equal 9/9
0x158914f9a041>)
  intern-soft("nntp+news.gnus.org:gnu.emacs.gnews"
              #<hash-table equal 9/9 0x158914f9a041>)
  gnus-request-group("nntp+news.gnus.org:gnu.emacs.gnews" t nil
("nntp+news.gnus.org:gnu.emacs.gnews" 3 nil nil "news.gnus.org"))
  gnus-select-newsgroup("nntp+news.gnus.org:gnu.emacs.gnews" nil nil)
  gnus-summary-read-group-1("nntp+news.gnus.org:gnu.emacs.gnews" nil t nil nil nil)
  gnus-summary-read-group("nntp+news.gnus.org:gnu.emacs.gnews" nil t nil nil nil nil)
  gnus-group-read-group(nil t)
  gnus-group-select-group(nil)
  funcall-interactively(gnus-group-select-group nil)
  call-interactively(gnus-group-select-group nil nil)
  command-execute(gnus-group-select-group)
----------------------------------------------------------------------------
-- 
Spenser Truex
[email-masked]
https://spensertruex.com/
San Francisco, USA