Sorry for the confusion: to setup the `c-ts-mode` buffers to reproduce bugs, run the following to configure `c-ts-mode` with `linux` style: (defun example-setup () (interactive) (c-ts-mode) (setq-local indent-tabs-mode nil) (setq-local c-ts-mode-indent-offset 2) (c-ts-mode-set-style 'linux)) The patch should also fix the missing indent for the `else_clause` mentioned in https://lists.gnu.org/archive/html/bug-gnu-emacs/2023-11/msg01266.html. On Thu, Nov 23, 2023 at 6:41 AM Dmitry Gutov wrote: > On 23/11/2023 16:33, Eli Zaretskii wrote: > >> Date: Thu, 23 Nov 2023 15:17:40 +0200 > >> Cc: 67357@debbugs.gnu.org > >> From: Dmitry Gutov > >> > >> On 23/11/2023 09:35, Eli Zaretskii wrote: > >>> I'm not sure I can reproduce these, it seems to me that the > >>> indentation is correct in these case when I try the examples. So > >>> please show a detailed recipe, starting from "emacs -Q", for each of > >>> the two problems, so that we could be sure that we are seeing the same > >>> problems. > >> > >> I can easily reproduce the first one (comment-related): the two > >> indicated lines just don't reindent at all. That's with the default > >> 'gnu' indentation style, but also with 'linux' and perhaps others (I > >> haven't tried). > > > > I don't understand what you mean by "reindent". That wasn't what the > > original report was about, AFAIU. > > Reindent is when you press tab, and the indentation on a given line > changes. In that example, no matter which indentation you set on those > line, pressing TAB doesn't change it. > > > I still think a complete recipe is needed. > > > >> To reproduce the second one, you first need to enable the 'linux' style: > > > > I tried to reproduce _only_ with the 'linux' style, as the bug report > > said. > > > >> (setq c-ts-mode-indent-style 'linux) > >> M-x c-ts-mode > > > > The style is a per-buffer setting, so AFAIU one needs to set the style > > after turning on the mode in a buffer, whether manually or > > automatically. > > Did you use 'M-x c-ts-mode-set-style', then? That also repros for me. > > The style can be set locally - as the above command does - but initially > the global value is used. And it's applied during the major mode's > execution, so a simple 'setq' doesn't work. > > > A full recipe is supposed to remove all those confusing details and > > potential mistakes. > > I don't mind. >