<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/55837>55837</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            clang-format inserts line break between constructor name and noexcept
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          beinhaerter
      </td>
    </tr>
</table>

<pre>
    clang-format 12, 13.0.1 and 14 format structs depending on their struct name.
`Rect` is formatted as expected/desired, but for `RECT` and `R` the `noexcept` of the constructor is put on the next line. It is not clear why `RECT` and `R` are handled differently than `Rect`.

Here is my C++ code.
```
struct Rect {
        Rect() noexcept;
};

struct RECT {
        RECT()
        noexcept;
};

struct R {
        R()
        noexcept;
};
```

And here is the content of my `with .clang-format`.
```
AccessModifierOffset: -4
AlignConsecutiveAssignments: AcrossComments
AlignConsecutiveBitFields: AcrossEmptyLinesAndComments
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros: true
AlignOperands: true
AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: false
AlwaysBreakTemplateDeclarations: true
BraceWrapping:
  AfterExternBlock: true
  AfterFunction: true
  BeforeCatch: true
  BeforeElse: true
  SplitEmptyFunction: false
  SplitEmptyRecord: false
  SplitEmptyNamespace: false
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: true
BreakConstructorInitializers: BeforeComma
BreakInheritanceList: BeforeComma
ColumnLimit: 0
Cpp11BracedListStyle: false
IndentGotoLabels: false
IndentPPDirectives: BeforeHash
IndentWidth: 4
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 5
NamespaceIndentation: All
PointerAlignment: Left
ReflowComments: false
SpaceBeforeSquareBrackets: false
SpacesBeforeTrailingComments: 3
SpacesInConditionalStatement: false
TabWidth: 4
UseTab: true
```


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyVVt-TojgQ_mvwJTWWgI7Ogw-K4611zs7U6tU-B2gkNyHhkrDq_fXXCaiA7tZtFYUx_fXXP9LdIZbpeZ5wKg5PmVQFNcQPvCAifjgcDX1CRUr8MWlE2qgqMZqkUIJImTgQKYjJgalGRAQtYOiNVt5o4T2PvkFi8Icw3TAYSAnVBE4lSiD1gnUKmim7ikhcGQsjVvE12ltFa97-tWu0Y9dCwimB0vHKzO0mUtTmURlNlchT-0UEnAzhTMCQbIyVCWlIwoEqcszPP7NEFZAcNzh6m7IsAwXC8DMyUkFuYV3idO8vCLIGijOJvGCJD7qVtnLRPO5vkyzLQ7zp8sLz4oiDmRe8kGuY4UU8Xd3WHRaMoMtiQ3Is163fYOtS_RZPN8j6vcC85k1umrMymE17dIU7gCMzORm2K7CV2i7jIklA6zeJZ8JAvWeZBvRkQZ7GjZyzg4iwGCCpDPsBC61xo0Bz2sIWiZJaR7Kodx6qLJlZM-BpS-G1KM15izWkMZZfa68A41DUMNyyBBnlGh5D36gltyDMexvzXoLC2rsTcXnc5VKZJZfJp34Xix32Hwfr2M-gEdWwpTHw_wdfVyJxrt-hN8L2UB-_yXaGGnD5uFPphH6kZ71UQD_3UJQcdfqJurmzVDSB74qWJdKhqN4lZJEZUK8nfAmXga5WI79E0BcuASsLImqS_LHo1Trbk-xKzow7_DZtK642BDtXqvQXgK84GHWJsfUwLi21E0smqDq788dJ5vLyVYpbEd8r2Fw5XFRpI4s7wEZg6zFDRQK2cGk_1QiMbrNzI5hhlLN_oTbeZM0p3hRanFumzUNgJHlViC0rmJM37RuVpe87n1OruTNn3s_GRqQY6B_SyLpuH4o_PlZ4ZSS2i1p-fqE6b6O-s9S4026Gw58AZauVzT4HLF9l3rO6o3qm3ujpht5Lq20Rk1p6Pc3aFr1UBzZHDfiQDOecch3tzg6FW8iaM_wGGTbRdZZ0Le8sbx3T7p-K1sf8CY9xugbuFWXYooc2ZdiGbezsSZn1k_Jr2_YY9zTuZ-0vDbjbrZuHc36QzsP0JXyhA8MMh-4nBcOxp_C7wU4REtsqIjGYI4Do3N3248FdxJdrZlApPs-NKW1A-LGAzwGviyoeJljtwZrzH5efp1LJv931uWZaV1gZwXoymYXTQT7PwtCnkPjxLA1efOr7lIbJKPTDWQBZjBDuim3uTfDeDgQciaPAtTdZDdg8GAXB6HkU-JPJdOwPx2kWjuMZnSazMIyfM288ggLzP7R-DKU6DNTcuRRXB41CjsWub0LqGhrAmUN-WhmcpvMYmMgppgnUwJmfO_f_Ay0nHBE">