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

    <tr>
        <th>Summary</th>
        <td>
            Format: Inconsistency in C99 structure init
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    This (original) code

```c
static const osThreadAttr_t modem_thread_attr = {
    .name = "modem_app",
    .stack_size = 2048,
    .priority = osPriorityNormal
};
static const osThreadAttr_t sensors_thread_attr = {
    .name = "sensors",
    .stack_size = 1024,
    .priority = osPriorityNormal,
};
```

is formatted as

```c
static const osThreadAttr_t modem_thread_attr = {.name = "modem_app", .stack_size = 2048, .priority = osPriorityNormal};
static const osThreadAttr_t sensors_thread_attr = {
    .name = "sensors",
    .stack_size = 1024,
    .priority = osPriorityNormal,
};
```

Why only first one is in-line, while second one remains as-is?
Even if I swap the var order, it will always format only *modem_thread_attr* variable

Format file

```
---
Language: Cpp
# BasedOnStyle:  LLVM
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignArrayOfStructures: None
AlignConsecutiveMacros:
  Enabled: true
  AcrossEmptyLines: true
  AcrossComments: true
AlignConsecutiveAssignments: None
AlignConsecutiveBitFields:
  Enabled: true
  AcrossEmptyLines: true
  AcrossComments: true
AlignConsecutiveDeclarations: None
AlignEscapedNewlines: Right
AlignOperands: Align
InsertBraces: true # Control statements must have curly brackets
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortEnumsOnASingleLine: true
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: AllDefinitions
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: Yes
AttributeMacros:
  - __capability
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
  AfterCaseLabel: false
  AfterClass: false
  AfterControlStatement: Never
  AfterEnum: false
  AfterFunction: false
  AfterNamespace: false
  AfterObjCDeclaration: false
  AfterStruct: false
  AfterUnion: false
  AfterExternBlock: false
  BeforeCatch: false
  BeforeElse: false
  BeforeLambdaBody: false
  BeforeWhile: false
  IndentBraces: false
  SplitEmptyFunction: true
  SplitEmptyRecord: true
  SplitEmptyNamespace: true
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeConceptDeclarations: true
BreakBeforeBraces: Attach
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: "^ IWYU pragma:"
QualifierAlignment: Leave
CompactNamespaces: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
EmptyLineAfterAccessModifier: Never
EmptyLineBeforeAccessModifier: LogicalBlock
ExperimentalAutoDetectBinPacking: false
PackConstructorInitializers: BinPack
BasedOnStyle: ""
ConstructorInitializerAllOnOneLineOrOnePerLine: false
AllowAllConstructorInitializersOnNextLine: true
FixNamespaceComments: true
ForEachMacros:
  - foreach
  - Q_FOREACH
  - BOOST_FOREACH
IfMacros:
  - KJ_IF_MAYBE
IncludeBlocks: Preserve
IncludeCategories:
  - Regex: "^<(.*)>"
    Priority: 0
  - Regex: '^"(.*)"'
    Priority: 1
  - Regex: "(.*)"
    Priority: 2
IncludeIsMainRegex: "(Test)?$"
IncludeIsMainSourceRegex: ""
IndentAccessModifiers: false
IndentCaseLabels: true
IndentCaseBlocks: false
IndentGotoLabels: true
IndentPPDirectives: None
IndentExternBlock: AfterExternBlock
IndentRequires: true
IndentWidth: 4
IndentWrappedFunctionNames: false
InsertTrailingCommas: None
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
LambdaBodyIndentation: Signature
MacroBlockBegin: ""
MacroBlockEnd: ""
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2
ObjCBreakBeforeNestedBlockParam: true
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakOpenParenthesis: 0
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PenaltyIndentedWhitespace: 0
PointerAlignment: Left
PPIndentWidth: -1
ReferenceAlignment: Pointer
ReflowComments: false
RemoveBracesLLVM: false
SeparateDefinitionBlocks: Always
ShortNamespaceLines: 1
SortIncludes: false
SortJavaStaticImport: Before
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCaseColon: false
SpaceBeforeParens: ControlStatements
SpaceBeforeParensOptions:
  AfterControlStatements: true
  AfterForeachMacros: true
  AfterFunctionDefinitionName: false
  AfterFunctionDeclarationName: false
  AfterIfMacros: true
  AfterOverloadedOperator: false
  BeforeNonEmptyParentheses: false
SpaceAroundPointerQualifiers: Default
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: Never
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInLineCommentPrefix:
  Minimum: 1
  Maximum: -1
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
BitFieldColonSpacing: Both
Standard: Latest
StatementAttributeLikeMacros:
  - Q_EMIT
StatementMacros:
  - Q_UNUSED
  - QT_REQUIRE_VERSION
TabWidth: 8
UseCRLF: false
UseTab: Never
WhitespaceSensitiveMacros:
  - STRINGIZE
  - PP_STRINGIZE
  - BOOST_PP_STRINGIZE
  - NS_SWIFT_NAME
  - CF_SWIFT_NAME
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
---
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzdWVtz4jgW_jXkxUUKDCHNAw9cZ91NgACZVM8LJWwBmjayR5KTsL9-jyRfZNlOZqq29mG7utNB59PR0bkfcYyC22h_Idxpud8iRs6EorDlDh0_CnCrM2t1xunPQUf_9fVnLpAgPsAoF07E9xeGUTAWgh2Ec4W914NQSwcEa06rN3NajxO91YE_9xRdsV52XY1HcQy_t9ypgYJT_F8HTv6tsW6n_60MiBkBqcVNkSO-ST-uInaFe2jJH2et3uRrqTmmPGL8H8id7vhK6m7H7f8TqTOoKXiuftMmYLWT3CIEDhzE_-vm-sxITbb56nL_t8Z4vdyciIY350SYvA_FDtiH0HZIKJaKeb-QEMPF4L6BIjN8RYRysFyb8FZvofnM3zB1yMnxHP6OYkdcsPOGmBOxADPJhgjnnYShg8J3dMscQJ_ccscVW8Ka3E_QMSzF80LvO5GwPsz1x3a7rX9ZInpO0Bm3emNnCj6gwW7PmSCOgzXdiVuoiM5y-fuTJo99H3P-FAXkRDBbn04cCwlpuyk9JGc6PgmgxZhOGNhJAxTBxDCGbuvTTrDEFwnDXIJWoEIDMwUvwn4iyBt-Qj6LJCYz8pzK2wdyF7DA2fJYwvj8GovbEmzE6-nT6HrFVFhU-8wx57CQA5uFmxCxIDgM_sfyzbAfIgbxBks1As65j2IcrPB7mJ20JeeLMCBgI4aokts0kAdHMCGNVwjoSMeAwwWLQkdGOVYSOtcEAuOC3rDjJwz89ahNzo1T9gwREOHcdKsweocfY3ZOFHlNV_hDSO3UAzdw5ysGD-Prk6GCT7ftLhETc5pcgft4B7KE-DPkJIz8X1WoMpuNnUKwLNERh1X8CYW8wnuRUF-ZrAIHjA1eousxQH8L6kEsZVap4Ff4DTKNzTyK4i-EluloAnnnlwrpGT4RSqTwWwwxS_e3GNuOV95RxsHRBQte2THBkPjwUxIK6S4YUgMIxptl2uNrHMKV7Tj4iTPekCvJMRHV7NF2DgeIDnSEkzKTTgjdgO_mflh2jpRaOJ9FlsHyyqCUgszGQUoLuYtYd8nIIeL2NTOSDrjcspYtU5R07Pr9mbPVU1dwFR6D4PXk9fHPqaHbepBO4PW0F9q4bf4BP6iKswpA-8EUCf_SQJvLlXqSjpgJtMANgFdZsis0jwag3iLllYi7GLxEBb-pTzNtF4gt9AKskvYLeknnpv_kAQCehthNpWYRsSyzF8WosgGcxMexsMOgnnl-QwgOBAq2AR69YGiVELCU-RpZylBIA7MkXBk_kySMaIXlHixt38gSTlY15UgR82R6QCH0doxnXBvkaNjVLI9yve_oDalyPaY0EoW-bO46_ywJbAFKWWhgnFzpklyJun3X7WTrqsRtGDpfkdoje9eHueO9_nxxYrUss4ObtkvPCcgsOylVKLMIX2KopzlDcBaRe40tab0KtDe_kkCoCOrnWEFoom7cgIjjble5SCANmzeAxcVnYPg3VSvmNNCprkLdRIQK60qGyDPCZWukm1WLljdGylLlZtPKfTlUm7qKXUZn4qNQ5xi95QNckEiRUDhORDSDRO6LNLOnlzGEkaufuZjel3qM1TKrkcX9zEZQDNfQtChdrhn8ssGsqXGAHw2CNHU9C_KR-0x93wX6n0MCqCmNUp15apALz4fFejsfT_9VLE3W692-vOydanj9-H7wFoen8c_JPOst_TAJsO6wpEQb6P0xy_w9JUPyx2cY2XCZ2xaf8UcRVa3etOV-u4dxqOUOW715rnE5A2Yzn4R3alk8ShbSTjkL-eGxnkW3QYrS5tqdbulmHn-CAdFisceQReUVFi05ydbt2EUJ83F5X46TsVwOADtPaEzRq5Z9oaAWdqls_i0SUfPmzWZGGEQTxL81jGi6VfArTYAB3eK_EsLs2ag-Y6WrsvHCQVadledX7iBnGnMUQZacsi7sfEZi8ZxEQjMwMnFBlqd51xg6aEvEHxjHxWg3FvsLNLGIifWpUGuBLjoVfYm8ydpB3kRyJtY4FVWKwQSfCbWtX5AhI1eJH4VA-0gKaDhzniEsAQqdyBYw63wZ2N-PwqziywRqgKQAlolcg1x0AyvwdRwovGqmy0qR4J0USTkInAkZW9itXA7SHG3JCm4bTFEobrr2Fw1UIZsJ0MwW8qVniowxUylsWMWnaVWSe51Ola44LSEm5b9Sl2Ci5DMJHAWMLpgTbmQrE6V7EcWkU3dWzSikwSXo_EOmiOkFEH52sY76U4IVQ9uaejBMvtOsvgzKQG1vHEBLLYqmNsPUdAFLfErb183GcpZ26pNbfMKgDXAAc2PKLIdATTSrmuEbW3yN3tI2Vz1blck7HEv94GIOLUJTj5YpTg7IeXzkTzWpkDs5b-vsbJ8vSSpVqIdQnSaKhrTAvHAwaHPLXsTAVPUUkJvtXqmApJ3OKmqGZA7yA9_eK_OJEUtFlDS06wZW1gvdYdecmoam9GzFwZ5keQN2HWfa-HQQrj6cqXFXdy55H1KDSEtEYX9p5M-HZ8NKzWCj-6meuoauNYxQAC1iqtWG4RQyr8rXeUao-pcyKYsSGqRBkc8QCgoXQ0koKtrdInrGqksFJcmXn9xylm09LUHdaG7Sv5AwHd3qnv66JsyjY_n4xK3mPiOC2QNlJVR-A6kcp6AC-iTZRNdNbDksD6evbuCptJdPdOAwH4ZXPoH7XPWzS94aQrXN1trWLb8-bPdXgvR8rp5PG0PqU1z2Eq2MKzelVWMSibSfBzXSAOkMsASNcpGva_Xmj2ZL8qvu4ez5MH_y9tamWtzL6mU3nxkr-8N2_vzibeeH3-fbnbdeadoeHfMy8E0vvUBm2S4X1u1gFbCWqxTFZwfpg9R-WdB2dvutt_rN-2NeLG02h5pVPdjU01a7w-7VW-wPq_GTsTxdVJbNLFmeqZsNOy2Pdk3xWfNMUwHmX_HkX_3c4VF3MOjD3153cBeMesGwN0R3gogQj4pRHIoaJF8QEyrwzSHUmQ6HDs--o3FkyrxLWDi6CBErBbswsSzORFyS470fXeFDGL5l_7VjFv0JMwF8JJwn4Pru4uFbt9O7u4w6vceO7w46_UG31xkeH4bBQx_3cS84oUHQP53uQjVqjFoPk9bD7I6M3I7rQrfSdd3-Q3dwfxz6Dwj3esNBZxj0UdDqd-RXb-G9PPg-Yuc7NlIyHJMzB2IIl-IFEak6h3HGHyUCKv7oCX2HTI3vlLgjJet_AJXtLcg">