]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix c-ts-mode--anchor-prev-sibling (bug#73661)
authorYuan Fu <casouri@gmail.com>
Tue, 15 Oct 2024 02:31:12 +0000 (19:31 -0700)
committerEshel Yaron <me@eshelyaron.com>
Tue, 22 Oct 2024 18:49:54 +0000 (20:49 +0200)
* lisp/progmodes/c-ts-mode.el:
(c-ts-mode--anchor-prev-sibling):  Fix parentheses and use a
slightly more efficient function.
* test/lisp/progmodes/c-ts-mode-resources/indent.erts: Replace
the tab in the test code with spaces.

(cherry picked from commit c154047c46ae833a114e84d72e62269d12c3249d)

lisp/progmodes/c-ts-mode.el
test/lisp/progmodes/c-ts-mode-resources/indent.erts

index 3f6a7422aa0e851969f133c1dea74f63d36a3817..5248328e411b286e668ff6c0e78aea3529f730a2 100644 (file)
@@ -335,16 +335,17 @@ characters of the current line."
           ((or "#elif" "#else")
            (setq prev-sibling (treesit-node-prev-sibling
                                (treesit-node-parent prev-sibling) t)))
-          ;; If the start of the previous sibling isn't at the
-          ;; beginning of a line, something's probably not quite
-          ;; right, go a step further. (E.g., comment after a
-          ;; statement.)  If the previous sibling is the first named
-          ;; node then anchor to that, e.g. when returning an aggregate
-          ;; and starting the items on the same line as {.
+          ;; If the start of the previous sibling isn't at the beginning
+          ;; of a line, something's probably not quite right, go a step
+          ;; further. (E.g., comment after a statement.)  If the
+          ;; previous sibling is the first named node, then anchor to
+          ;; that, e.g. when returning an aggregate and starting the
+          ;; items on the same line as {.
           (_ (goto-char (treesit-node-start prev-sibling))
              (if (or (looking-back (rx bol (* whitespace))
-                                   (line-beginning-position)))
-                     (null (treesit-node-prev-sibling prev-sibling t))
+                                   (line-beginning-position))
+                     (treesit-node-eq (treesit-node-child parent 0 t)
+                                      prev-sibling))
                  (setq continue nil)
                (setq prev-sibling
                      (treesit-node-prev-sibling prev-sibling)))))))
index a13a74cf8b387f4ccdce11ef440e82cc2086c744..f97ceac61f5104f5c4b138eb7887fae308e6f5ab 100644 (file)
@@ -214,7 +214,7 @@ Name: Return Compund Literal
 struct pair { int fst, snd; };
 struct pair
 make_pair(int long_identifier_a[], int long_identifier_b[],
-         int offset_a, int offset_b)
+          int offset_a, int offset_b)
 {
   int base_offset = 10;
   return (struct pair) { long_identifier_a[base_offset + offset_b],