bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#72263: 31.0.50; Wrong indentation c++-ts-mode


From: Eli Zaretskii
Subject: bug#72263: 31.0.50; Wrong indentation c++-ts-mode
Date: Thu, 25 Jul 2024 10:29:47 +0300

> Date: Wed, 24 Jul 2024 02:02:33 +0200
> From:  Ergus via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
> 
> When using c++-ts-mode there is an indentation issue apparently related
> with namespaces+templates.
> 
> c-ts-mode-indent-style 'linux (but with 'gnu also happens)
> 
> ```
> namespace A {
> 
>       T myfunction1(const char *fname)
>       {
>       }
> 
>       template <class T>
> T myfunction2(const char *fname)
> {
> }
> 
> }
> ```
> 
> The myfunction2 may be indented as expected, but it is not.
> 
> The explorer shows:
> 
> ```
> (translation_unit
>  (namespace_definition namespace name: (namespace_identifier)
>   body: 
>    (declaration_list {
>     (function_definition type: (primitive_type)
>      declarator: 
>       (function_declarator declarator: (identifier)
>        parameters: 
>       (parameter_list (
>        (parameter_declaration
>         (type_qualifier const)
>         type: (primitive_type)
>         declarator: (pointer_declarator * declarator: (identifier)))
>        )))
>      body: (compound_statement { }))
>     (template_declaration template
>      parameters: 
>       (template_parameter_list <
>        (type_parameter_declaration class (type_identifier))
>        >)
>      (function_definition type: (type_identifier)
>       declarator: 
>        (function_declarator declarator: (identifier)
>       parameters: 
>        (parameter_list (
>         (parameter_declaration
>          (type_qualifier const)
>          type: (primitive_type)
>          declarator: (pointer_declarator * declarator: (identifier)))
>         )))
>       body: (compound_statement { })))
>     })))
> ```

Yuan, can you take a look, please?





reply via email to

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