Issue 153443
Summary [clang-format] inner final classes are not formatted correctly
Labels clang-format
Assignees
Reporter joelhock
    clang-format version 20.1.0 (https://github.com/llvm/llvm-project.git 24a30daa) correctly formatted inner classes marked `final`:

```
class Outer {
    class Inner : public Base,
                  public Base2,
 public Base3,
                  public Base4,
                  public Base5,
                  public Base6 {
        Inner();
    };

 class InnerFinal final : public Base,
                             public Base2,
                             public Base3,
 public Base4,
                             public Base5,
 public Base6 {
        InnerFinal();
    };

    struct InternNameLongerrrr final
      : BaseClasssssssssssssssssssssssssssssssssssss {
 InternNameLongerrrr();
    };
};
```

whereas clang-format version 21.1.0-rc3 (https://github.com/llvm/llvm-project.git 6096d35ea9) misformats the inner classes marked `final`:
```
class Outer {
  class Inner : public Base,
                public Base2,
                public Base3,
 public Base4,
                public Base5,
                public Base6 {
    Inner();
  };

  class InnerFinal final : public Base, public Base2, public Base3,
      public Base4, public Base5, public Base6 {
 InnerFinal();
  };

  struct InternNameLongerrrr
      final : BaseClasssssssssssssssssssssssssssssssssssss {
    InternNameLongerrrr();
 };
};
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to