GNU bug report logs - #60427
Emacs-29, c++-ts-mode: typing "char" into an empty buffer causes an exception in redisplay.

Previous Next

Package: emacs;

Reported by: Alan Mackenzie <acm <at> muc.de>

Date: Fri, 30 Dec 2022 12:25:01 UTC

Severity: normal

Full log


View this message in rfc822 format

From: Alan Mackenzie <acm <at> muc.de>
To: 60427 <at> debbugs.gnu.org
Subject: bug#60427: Emacs-29, c++-ts-mode: typing "char" into an empty buffer causes an exception in redisplay.
Date: Fri, 30 Dec 2022 12:24:38 +0000
Hello, Emacs.

In the emacs-29 branch, with the latest commit being:

commit 558b59d81b938fc434e62523106360b9704c88e2 (HEAD -> emacs-29, origin/emacs-29, origin/HEAD)
Author: Yuan Fu <casouri <at> gmail.com>
Date:   Thu Dec 29 11:52:06 2022 -0800

    Add color fontification in css-ts-mode (bug#60405)

:
(i) emacs -Q
(ii) (setq backtrace-on-redisplay-error t)
(iii) C-x b string.cc <RET>
(iv) M-x c++-ts-mode <RET>
(v) Type "char" (without the quote marks).

This throws an exception in the redisplay code.  The backtrace in the
*Redisplay-trace* buffer is:

Error: treesit-query-error ("Node type error at" 195 "Debug the query with `treesit-query-validate'")
  debug-early-backtrace()
  debug-early(error (treesit-query-error "Node type error at" 195 "Debug the query with `treesit-query-validate'"))
  treesit-font-lock-fontify-region(1 5 nil)
  font-lock-default-fontify-region(1 5 nil)
  font-lock-fontify-region(1 5)
  #f(compiled-function (fun) #<bytecode -0x156ee3e72a1d5e83>)(font-lock-fontify-region)
  jit-lock--run-functions(1 5)
  jit-lock-fontify-now(1 5)
  jit-lock-function(1)
  redisplay_internal\ \(C\ function\)()

..  That this insertion causes an exception is clearly a bug.

But the contents of the backtrace seem to me to be less helpful than they
might be.  What does the "the" in "the query" refer to?  There is no
referent yet established.  What does the 195 refer to?  It clearly isn't
a buffer position, which is what it would mean in lots of other Emacs
error messages.

Just as a matter of interest, in c-ts-mode, the above actions run without
problem.

-- 
Alan Mackenzie (Nuremberg, Germany).




This bug report was last modified 2 years and 167 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.