summaryrefslogtreecommitdiff
path: root/src/fns.c
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2023-01-14 09:10:45 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2023-01-14 09:10:45 -0500
commit4f0459aaf756e56db5fb943177eec6eb5bd5fc4a (patch)
treed4f404727a4a55e2efc1dd4979851bcb67ccd852 /src/fns.c
parent99120491730c5839a5ba15ded187d481af1e71a7 (diff)
parent861556c1339cd65842ec3e24ba48590e6b72bd48 (diff)
downloademacs-4f0459aaf756e56db5fb943177eec6eb5bd5fc4a.tar.gz
Merge from origin/emacs-29
861556c1339 Fix minibuffer-completion tests c0578edc8fc ; * doc/misc/eglot.texi (Troubleshooting Eglot): Fix typo... c6bbf9cc270 Add c-ts-mode tests a760364f5f3 Fix c-ts-mode--fill-paragraph 2a2b1d09ac7 Fix minor issues with 'pp' and related commands dfb38fb2ee6 ; Improve documentation of tree-sitter node comparison e8a89a18b69 ; Fix non-tree-sitter builds f27a330b99e ; Fix typo in ert-with-temp-file 956889d8ff1 Equal now recognizes tree-sitter nodes (bug#60659) 8f446c2d397 Fix c-ts-mode comment indentation (bug#60270) 083badc9c12 * lisp/subr.el (while-let): Use if-let, not if-let* (bug#... 9ecebcdded1 * lisp/simple.el (next-completion): Handle first completi... cfd2b3504ab Fix encoding with 'utf-8-auto' 53b47df8229 Report cursor correctly on PGTK when there is a margin # Conflicts: # etc/NEWS
Diffstat (limited to 'src/fns.c')
-rw-r--r--src/fns.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/fns.c b/src/fns.c
index bbc9a7f9621..d8bd7d318b0 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -38,6 +38,10 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#include "puresize.h"
#include "gnutls.h"
+#ifdef HAVE_TREE_SITTER
+#include "treesit.h"
+#endif
+
enum equal_kind { EQUAL_NO_QUIT, EQUAL_PLAIN, EQUAL_INCLUDING_PROPERTIES };
static bool internal_equal (Lisp_Object, Lisp_Object,
enum equal_kind, int, Lisp_Object);
@@ -2828,6 +2832,11 @@ internal_equal (Lisp_Object o1, Lisp_Object o2, enum equal_kind equal_kind,
bool_vector_bytes (size)));
}
+#ifdef HAVE_TREE_SITTER
+ if (TS_NODEP (o1))
+ return treesit_node_eq (o1, o2);
+#endif
+
/* Aside from them, only true vectors, char-tables, compiled
functions, and fonts (font-spec, font-entity, font-object)
are sensible to compare, so eliminate the others now. */