[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#65810: 30.0.50; C-M-f and related functions error out in c++-ts-mode
From: |
Eli Zaretskii |
Subject: |
bug#65810: 30.0.50; C-M-f and related functions error out in c++-ts-mode |
Date: |
Thu, 07 Sep 2023 21:09:33 +0300 |
> From: João Távora <joaotavora@gmail.com>
> Cc: eliz@gnu.org
> Date: Thu, 07 Sep 2023 18:48:07 +0100
>
> Now just type C-M-f or any C-M-something command.
>
> Debugger entered--Lisp error: (treesit-invalid-predicate nil)
> treesit-node-match-p(#<treesit-node "{" in 1-2> sexp t)
> #f(compiled-function (node) #<bytecode
> 0x1a160a6a590699e2>)(#<treesit-node "{" in 1-2>)
> treesit-node-match-p(#<treesit-node "{" in 1-2> #f(compiled-function
> (node) #<bytecode 0x1a160a6a590699e2>) t)
> treesit-node-top-level(#<treesit-node "{" in 1-2> #f(compiled-function
> (node) #<bytecode 0x1a160a6a590699e2>) t)
> treesit--things-around(5 sexp)
> treesit--navigate-thing(5 -1 beg sexp restricted)
> treesit-beginning-of-thing(sexp 1 restricted)
> treesit-forward-sexp(-1)
> forward-sexp(-1 nil)
> forward-sexp(-1 5)
> backward-sexp(1 5)
> funcall-interactively(backward-sexp 1 5)
> call-interactively(backward-sexp nil nil)
> command-execute(backward-sexp)
>
> simple.cpp can be any C++ file, from a simple
>
> int main() {return 0;}
>
> to a completely empty file.
With the above sample file I can indeed reproduce the error. But not
with real-life files I tried, where functions are larger and there's
usually more than one function.
Yuan, could you please look into this?