GNU bug report logs - #59498
29.0.50; c++-ts-mode get wrong-type-argument error when enabled

Previous Next

Package: emacs;

Reported by: Eason Huang <aqua0210 <at> foxmail.com>

Date: Wed, 23 Nov 2022 02:26:02 UTC

Severity: normal

Tags: patch

Found in version 29.0.50

Fixed in version 29.1

Done: Yuan Fu <casouri <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Randy Taylor <dev <at> rjt.dev>
To: Eason Huang <aqua0210 <at> foxmail.com>
Cc: Yuan Fu <casouri <at> gmail.com>, 59498 <at> debbugs.gnu.org, Daniel Martín <mardani29 <at> yahoo.es>
Subject: bug#59498: 29.0.50; c++-ts-mode get wrong-type-argument error when enabled
Date: Thu, 24 Nov 2022 14:39:19 +0000
[Message part 1 (text/plain, inline)]
On Wednesday, November 23rd, 2022 at 05:53, Eason Huang <aqua0210 <at> foxmail.com> wrote:

> 
> 
> But when I try to indent code,
> it will raise the error (Wrong type argument: stringp, nil) again.
> It should be a different bug.
> 
> Steps to reproduce:
> 
> After the step 4, try to type the code as below:
> 
> int main(){
> <-- put you cursor at the first colum 1, and then hit TAB(indent-for-tab-command)
> 
> }
> 
> after you hit TAB at the above code, you will get the backtrace error as
> below:
> 
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
> looking-at(nil t)
> #f(compiled-function (&rest _) #<bytecode 0x18b0dfc57c56ebd8>)(nil #<treesit-node (compound_statement) in 11-15> 13)
> 
> #f(compiled-function (fn) #<bytecode 0x188c898311f019af>)(#f(compiled-function (&rest _) #<bytecode 0x18b0dfc57c56ebd8>))
> 
> mapcar(#f(compiled-function (fn) #<bytecode 0x188c898311f019af>) (#f(compiled-function (n parent &rest _) #<bytecode 0x149caa867664fee9>) #f(compiled-function (&rest _) #<bytecode 0x18b0dfc57c56ebd8>)))
> 
> #f(compiled-function (node parent bol &rest _) #<bytecode -0xb869f433d8fc770>)(nil #<treesit-node (compound_statement) in 11-15> 13)
> 
> treesit--simple-indent-eval(((and (parent-is "comment") comment-end) nil #<treesit-node (compound_statement) in 11-15> 13))
> 
> treesit-simple-indent(nil #<treesit-node (compound_statement) in 11-15> 13)
> 
> treesit--indent-1()
> treesit-indent()
> indent-according-to-mode()
> electric-indent-post-self-insert-function()
> newline(nil 1)
> funcall-interactively(newline nil 1)
> command-execute(newline)
> 
> 
> --
> Eason Huang
> 

The attached patch fixes it for me.
[0001-Fix-c-ts-mode-indentation-Bug-59498.patch (text/x-patch, attachment)]

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

Previous Next


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