Wow, thank you so much for diving into this issue! I'll keep track of it in tree-sitter repo from now on.
It seems like other integrations somehow manage to avoid hanging or crashing the main process, so it doesn't affect them?
I just checked in the Zed editor again to confirm. When I type a={
, it fails to highlight the rest of the embedded HEEX (but only within the current function) though.
On Sep 11, 2024, at 7:45 AM, Yuan Fu <casouri@gmail.com> wrote:On Sep 8, 2024, at 12:48 AM, Yuan Fu <casouri@gmail.com> wrote:On Sep 8, 2024, at 12:02 AM, Eli Zaretskii <eliz@gnu.org> wrote:From: Yuan Fu <casouri@gmail.com>
Date: Sat, 7 Sep 2024 22:57:29 -0700
Cc: mail@ssbb.me,
wkirschbaum@gmail.com,
72863@debbugs.gnu.orgOn Sep 7, 2024, at 10:54 PM, Eli Zaretskii <eliz@gnu.org> wrote:From: Yuan Fu <casouri@gmail.com>
Date: Sat, 7 Sep 2024 22:44:53 -0700
Cc: Wilhelm Kirschbaum <wkirschbaum@gmail.com>,
Eli Zaretskii <eliz@gnu.org>,
72863@debbugs.gnu.org
Meanwhile, I want to push the fix for the other bug I discovered to emacs-30. Eli, I wrote a debugging function that prints parser states, naturally this function isn’t called anywhere so there’ll be a compiler warning, what should I do in this case?
Why would there be a compiler warning? What kind of warning?
A function-not-used warning. Maybe it’s an lldb thing?
If the function is not static, there should be no such warning.
Ah, you’re right, I marked it static. Thanks!
Yuan
Good news: not an Emacs bug. Bad news: a tree-sitter bug. Turns out I made an error in my test program, which is the reason why Emacs hangs but the test program doesn’t. Once I fixed the error, the test program hangs too. I submitted a bug report to tree-sitter: https://github.com/tree-sitter/tree-sitter/issues/3620
I can finally sleep soundly at night now; and I guess tree-sitter dev will start having sleepless nights :-)
Yuan