unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Andrea Corallo <acorallo@gnu.org>
To: Yuan Fu <casouri@gmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: master 63d69bd1549 07/11: Use new baseline indent rule in c-ts-mode
Date: Tue, 03 Dec 2024 03:05:25 -0500	[thread overview]
Message-ID: <yp1zfldfayi.fsf@fencepost.gnu.org> (raw)
In-Reply-To: <DD2CE709-DAA7-41C8-9BAB-CC85B5E73E00@gmail.com> (Yuan Fu's message of "Mon, 2 Dec 2024 16:38:28 -0800")

Yuan Fu <casouri@gmail.com> writes:

>> On Dec 2, 2024, at 1:02 PM, Andrea Corallo <acorallo@gnu.org> wrote:
>>
>> Yuan Fu <casouri@gmail.com> writes:
>>
>>> branch: master
>>> commit 63d69bd154987bcc0434e0f85e09bf5dfa07b827
>>> Author: Yuan Fu <casouri@gmail.com>
>>> Commit: Yuan Fu <casouri@gmail.com>
>>>
>>>    Use new baseline indent rule in c-ts-mode
>>>
>>>    Rework the indent rules in c-ts-mode using
>>>    c-ts-common-baseline-indent-rule.  Also reworked internal
>>>    functions for setting indent styles to make it simpler and (more
>>>    importantly) more readable.  Now there's a single function,
>>>    c-ts-mode--simple-indent-rules, that returns a value that can go
>>>    straight to treesit-simple-indent-rules.
>>>
>>>    * lisp/progmodes/c-ts-mode.el:
>>>    (c-ts-mode--indent-style-setter): Simplify.
>>>    (c-ts-mode--get-indent-style): Remove function.
>>>    (c-ts-mode--prompt-for-style): Use a hard-coded list of styles.
>>>    This is a tiny downgrade from the computed lists but is
>>>    acceptable.
>>>    (c-ts-mode-set-style): Use c-ts-mode--simple-indent-rules.
>>>    (c-ts-mode--standalone-grandparent): Docstring change.
>>>    (c-ts-mode--for-loop-indent-rule): New function.
>>>    (c-ts-mode--preproc-indent-rules): New variable.  Copied from
>>>    old indent rules and added some new rule.
>>>    (c-ts-mode--macro-heuristic-rules):
>>>    (c-ts-mode--simple-indent-rules):
>>>    (c-ts-mode--parenthesized-expression-indent-rule):
>>>    (c-ts-mode--label-indent-rules): New functions.
>>>    (c-ts-mode):
>>>    (c++-ts-mode): Use c-ts-mode--simple-indent-rules.
>>> ---
>>
>> Hi Yuan,
>>
>> this commit on my test-bench seems to introduce on master the following
>> two failures: c-ts-mode-test-indentation-bsd,
>> c-ts-mode-test-indentation.
>>
>> Could you have a look?
>>
>>  Andrea
>
> Hey Andrea, sorry about that. The tests do pass on my machine. How does the test-bench run the tests?
>
> Yuan

Seems 44fcd37a486399be048fb03b9456497af78632fe fixed
c-ts-mode-test-indentation-bsd.  I still see:

Running 4 tests (2024-12-03 03:51:05+0100, selector `(not (or (tag :expensive-test) (tag :unstable) (tag :nativecomp)))')
   passed  1/4  c-ts-mode-test-filling (0.033575 sec)
Test c-ts-mode-test-indentation backtrace:
  signal(ert-test-failed (("Mismatch in test \"For Loop with Multi-lin
  ert-fail(("Mismatch in test \"For Loop with Multi-line Condition (GN
  ert-test--erts-test(((code lambda nil (c-ts-mode) (setq-local indent
  ert-test-erts-file("/home/andcor03/emacs-ci/emacs-ci-repo1/test/lisp
  #f(compiled-function () #<bytecode 0x165c3552b49c3535>)()
  #f(compiled-function () #<bytecode -0x1132e651e2fb7509>)()
  handler-bind-1(#f(compiled-function () #<bytecode -0x1132e651e2fb750
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name c-ts-mode-test-indentation :documenta
  ert-run-or-rerun-test(#s(ert--stats :selector (not (or ... ... ...))
  ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n
  ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (
  ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
  eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
  command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
  command-line()
  normal-top-level()
Test c-ts-mode-test-indentation condition:
    (ert-test-failed
     ("Mismatch in test \"For Loop with Multi-line Condition (GNU Style)\", file /home/andcor03/emacs-ci/emacs-ci-repo1/test/lisp/progmodes/c-ts-mode-resources/indent.erts"
      #("int main()\n{\n  for (\n       int i = 0;\n       i < b;\n       i++\n      )\n      {\n        return 0;\n      }\n}\n"
        0 108 (fontified nil))
      "int main()\n{\n  for (\n       int i = 0;\n       i < b;\n       i++\n      )\n    {\n      return 0;\n    }\n}\n"))
   FAILED  2/4  c-ts-mode-test-indentation (0.016936 sec) at lisp/progmodes/c-ts-mode-tests.el:26


Configuring with --with-native-compilation=no --with-x-toolkit=no

Regards

  Andrea



  reply	other threads:[~2024-12-03  8:05 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <173310542049.252624.8341603519407599366@vcs3.savannah.gnu.org>
     [not found] ` <20241202021023.2C8B8521785@vcs3.savannah.gnu.org>
2024-12-02 21:02   ` master 63d69bd1549 07/11: Use new baseline indent rule in c-ts-mode Andrea Corallo
2024-12-03  0:38     ` Yuan Fu
2024-12-03  8:05       ` Andrea Corallo [this message]
     [not found] ` <20241202021023.5060A521787@vcs3.savannah.gnu.org>
2024-12-04  8:19   ` master 44fcd37a486 08/11: Add more c-ts-mode indent tests Michael Albinus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=yp1zfldfayi.fsf@fencepost.gnu.org \
    --to=acorallo@gnu.org \
    --cc=casouri@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).