emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 176830fe2bb: Fix incremental build failures with tree-sitter


From: Po Lu
Subject: master 176830fe2bb: Fix incremental build failures with tree-sitter
Date: Mon, 30 Jan 2023 08:33:51 -0500 (EST)

branch: master
commit 176830fe2bb1c80ee128e515f6223cddc8b0a2ca
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Fix incremental build failures with tree-sitter
    
    * lisp/treesit.el (treesit-subtree-stat): Declare missing
    function.
    (treesit-buffer-root-node): Return nil if tree-sitter not
    present.
---
 lisp/treesit.el | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/lisp/treesit.el b/lisp/treesit.el
index c9f2e339dc2..202a383ed7d 100644
--- a/lisp/treesit.el
+++ b/lisp/treesit.el
@@ -86,6 +86,7 @@
 
 (declare-function treesit-search-subtree "treesit.c")
 (declare-function treesit-search-forward "treesit.c")
+(declare-function treesit-subtree-stat "treesit.c")
 (declare-function treesit-induce-sparse-tree "treesit.c")
 
 (declare-function treesit-available-p "treesit.c")
@@ -265,12 +266,14 @@ If INCLUDE-NODE is non-nil, return NODE if it satisfies 
PRED."
 Use the first parser in the parser list if LANGUAGE is omitted.
 If LANGUAGE is non-nil, use the first parser for LANGUAGE in the
 parser list, or create one if none exists."
-  (if-let ((parser
-            (if language
-                (treesit-parser-create language)
-              (or (car (treesit-parser-list))
-                  (signal 'treesit-no-parser (list (current-buffer)))))))
-      (treesit-parser-root-node parser)))
+  ;; Otherwise the incremental build is broken without tree-sitter.
+  (when (treesit-available-p)
+    (if-let ((parser
+              (if language
+                  (treesit-parser-create language)
+                (or (car (treesit-parser-list))
+                    (signal 'treesit-no-parser (list (current-buffer)))))))
+        (treesit-parser-root-node parser))))
 
 (defun treesit-filter-child (node pred &optional named)
   "Return children of NODE that satisfies predicate PRED.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]