Subject: 26.3; global-display-line-numbers-mode and flymake-show-diagnostics-buffer error

From: Aidan Beggs <[email-masked]>
Date: Thu, 9 Apr 2020 16:55:44 -0400

I'm running into errors when attempting to run
flymake-show-diagnostics-buffer. If run after I've enabled line numbers via
global-display-line-numbers-mode, I get the following stack trace:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  flymake--diagnostics-buffer-entries()
  tabulated-list-print(t)
  tabulated-list-revert()
  run-hooks(display-line-numbers-mode-hook
display-line-numbers-mode-on-hook)
  display-line-numbers-mode()
  display-line-numbers--turn-on()
  global-display-line-numbers-mode-enable-in-buffers()
  run-hooks(after-change-major-mode-hook)
  run-mode-hooks(flymake-diagnostics-buffer-mode-hook)
  flymake-diagnostics-buffer-mode()
  flymake-show-diagnostics-buffer()
  funcall-interactively(flymake-show-diagnostics-buffer)
  call-interactively(flymake-show-diagnostics-buffer record nil)
  command-execute(flymake-show-diagnostics-buffer record)
  execute-extended-command(nil "flymake-show-diagnostics-buffer"
"flymake-show-diagnostics")
  funcall-interactively(execute-extended-command nil
"flymake-show-diagnostics-buffer" "flymake-show-diagnostics")
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)

Once this has been thrown once, running flymake-show-diagnostics-buffer
works properly. The only thing in my config file is
(global-display-line-numbers-mode).

To repro:

emacs -Q
C-x b *scratch*
M-x global-display-line-numbers-mode
M-x flymake-mode
M-x flymake-show-diagnostics-buffer

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Flymake mode enabled in current buffer
tabulated-list-print: Wrong type argument: stringp, nil
Making completion list...

Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt'
 CPPFLAGS=-D_FORTIFY_SOURCE=2
 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD LCMS2

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  flymake-mode: t
  global-display-line-numbers-mode: t
  display-line-numbers-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t