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

    <tr>
        <th>Summary</th>
        <td>
            clang-format - function declaration incorrect formatting 
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-format
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          robert-andrzejuk
      </td>
    </tr>
</table>

<pre>
    Is:

 int function_name(HWND*          parent,
                      int id,
                      const wchar_t* title,
 int            x       = 0,
                      int y = 0,
                      int w                  = 0,
 int h                  = 0,
                      long extraStyle = 0,
                      bool readOnly          = false,
 FancyClassType* module = nullptr);


Expected:

 int function_name(HWND*           parent,
                      int id,
                      const wchar_t*  title,
 int             x          = 0,
                      int y          = 0,
                      int             w          = 0,
                      int             h          = 0,
 long            extraStyle = 0,
                      bool readOnly   = false,
                      FancyClassType* module     = nullptr);


Clang-format file:
```
  # LLVM version 18
 
  Language: Cpp
  AccessModifierOffset: -4
  AlignAfterOpenBracket: Align
  AlignArrayOfStructures: Right
 AlignConsecutiveAssignments:
    Enabled: true
    AcrossEmptyLines: false
    AcrossComments: true
    AlignCompound: true
 AlignFunctionPointers: true
    PadOperators: true
 AlignConsecutiveBitFields:
    Enabled: true
    AcrossEmptyLines: false
    AcrossComments: true
    AlignCompound: true
 AlignFunctionPointers: true
    PadOperators: false
 AlignConsecutiveDeclarations:
    Enabled: true
    AcrossEmptyLines: false
    AcrossComments: true
    AlignCompound: true
 AlignFunctionPointers: true
    PadOperators: false
 AlignConsecutiveMacros:
    Enabled: true
    AcrossEmptyLines: false
    AcrossComments: true
    AlignCompound: true
 AlignFunctionPointers: true
    PadOperators: false
 AlignConsecutiveShortCaseStatements:
    Enabled:         true
 AcrossEmptyLines: false
    AcrossComments:  false
    AlignCaseColons: false
  AlignEscapedNewlines: Left
  AlignOperands: Align
 AlignTrailingComments:
    Kind:            Always
    OverEmptyLines: 0
  AllowAllArgumentsOnNextLine: false
 #AllowAllConstructorInitializersOnNextLine: false #depracated
 AllowAllParametersOfDeclarationOnNextLine: false
 AllowBreakBeforeNoexceptSpecifier: OnlyWithParen
 AllowShortBlocksOnASingleLine: Never
  AllowShortCaseLabelsOnASingleLine: false
  AllowShortCompoundRequirementOnASingleLine: true
 AllowShortEnumsOnASingleLine: false
  AllowShortFunctionsOnASingleLine: None
  AllowShortIfStatementsOnASingleLine: Never
 AllowShortLambdasOnASingleLine: Inline
  AllowShortLoopsOnASingleLine: false
  AlwaysBreakAfterDefinitionReturnType: None
 AlwaysBreakAfterReturnType: None
  AlwaysBreakBeforeMultilineStrings: false
  AlwaysBreakTemplateDeclarations: Yes
  AttributeMacros:
 - __capability
  BinPackArguments: false
  BinPackParameters: false
 BitFieldColonSpacing: Both
  BraceWrapping:
    AfterCaseLabel: true
    AfterClass: true
    AfterControlStatement: Always
 AfterEnum: true
    AfterExternBlock: true
    AfterFunction: true
 AfterNamespace: false
    AfterObjCDeclaration: true
    AfterStruct: true
    AfterUnion: true
    BeforeCatch: true
    BeforeElse: true
    BeforeLambdaBody: true
    BeforeWhile: false
 IndentBraces: false
    SplitEmptyFunction: false
    SplitEmptyRecord: false
    SplitEmptyNamespace: false
  BreakAdjacentStringLiterals: true
  BreakAfterAttributes: Leave
  BreakAfterJavaFieldAnnotations: false
  BreakArrays:     true
  BreakBeforeBinaryOperators: NonAssignment
  BreakBeforeConceptDeclarations: Always
 BreakBeforeBraces: Custom
  BreakBeforeInlineASMColon: OnlyMultiline
 BreakBeforeTernaryOperators: true
  BreakConstructorInitializers: BeforeColon
  BreakInheritanceList: AfterComma
  BreakStringLiterals: false
  ColumnLimit: 120
  CommentPragmas: "^ IWYU pragma:"
 CompactNamespaces: true
  #ConstructorInitializerAllOnOneLineOrOnePerLine: false #depracated
  ConstructorInitializerIndentWidth: 6
 ContinuationIndentWidth: 6
  Cpp11BracedListStyle: false
 DerivePointerAlignment: false
  DisableFormat: false
 EmptyLineAfterAccessModifier: Never
  EmptyLineBeforeAccessModifier: Always
  ExperimentalAutoDetectBinPacking: false
 FixNamespaceComments: true
  ForEachMacros:
    - foreach
    - Q_FOREACH
    - BOOST_FOREACH
  IfMacros:
    - KJ_IF_MAYBE
 IncludeBlocks: Preserve
  IncludeCategories:
    - Regex: '\"stdafx.h\"|\"StdAfx.h\"'
      Priority: -1
 SortPriority: 0
      CaseSensitive: false
    - Regex: ".*"
 Priority: 2
      SortPriority: 0
      CaseSensitive: false
    - Regex: '\<cstdlib\>|\<csignal\>|\<csetjmp\>|\<cstdarg\>|\<typeinfo\>|\<typeindex\>|\<type_traits\>|\<bitset\>|\<functional\>|\<utility\>|\<ctime\>|\<chrono\>|\<cstddef\>|\<initializer_list\>|\<tuple\>|\<any\>|\<optional\>|\<new\>|\<memory\>|\<scoped_allocator\>|\<memory_resource\>|\<climits\>|\<cfloat\>|\<cstdint\>|\<cinttypes\>|\<limits\>|\<exception\>|\<exception_list\>|\<stdexcept\>|\<cassert\>|\<system_error\>|\<cerrno\>|\<cctype\>|\<cwctype\>|\<cstring\>|\<cwchar\>|\<cuchar\>|\<string\>|\<string_view\>|\<array\>|\<vector\>|\<deque\>|\<list\>|\<forward_list\>|\<set\>|\<map\>|\<unordered_set\>|\<unordered_map\>|\<stack\>|\<queue\>|\<algorithm\>|\<execution_policy\>|\<iterator\>|\<cmath\>|\<complex\>|\<valarray\>|\<random\>|\<numeric\>|\<ratio\>|\<cfenv\>|\<iosfwd\>|\<ios\>|\<istream\>|\<ostream\>|\<iostream\>|\<fstream\>|\<sstream\>|\<strstream\>|\<iomanip\>|\<streambuf\>|\<cstdio\>|\<locale\>|\<clocale\>|\<codecvt\>|\<regex\>|\<atomic\>|\<thread\>|\<mutex\>|\<shared_mutex\>|\<future\>|\<condition_variable\>|\<filesystem\>|\<ciso646\>|\<ccomplex\>|\<ctgmath\>|\<cstdalign\>|\<cstdbool\>'
 Priority: 3
      SortPriority: 0
      CaseSensitive: false
 - Regex: '\<sys\/|\<unistd.h\>|\<fcntl.h>|\<poll.h\>'
 Priority: 4
      SortPriority: 0
      CaseSensitive: false
    - Regex: '\<gmock|\<gtest|\<log'
      Priority: 5
      SortPriority: 0
      CaseSensitive: false
  IncludeIsMainRegex: "(Test)?$"
 IncludeIsMainSourceRegex: ""
  IndentAccessModifiers: false
 IndentCaseBlocks: false
  IndentCaseLabels: true
  IndentExternBlock: Indent
  IndentGotoLabels: false
  IndentPPDirectives: BeforeHash
 IndentRequiresClause: true
  IndentWidth: 4
 IndentWrappedFunctionNames: true
  InsertBraces: true
 InsertNewlineAtEOF: true
  InsertTrailingCommas: None
 #IntegerLiteralSeparator:
  #  Binary:           4
  # BinaryMinDigits:  6
  #  Decimal:          3
  #  DecimalMinDigits: 5
  #  Hex:              4
  #  HexMinDigits:     4
 JavaScriptQuotes: Leave
  JavaScriptWrapImports: true
 KeepEmptyLinesAtTheStartOfBlocks: false
  KeepEmptyLinesAtEOF: false
 LambdaBodyIndentation: Signature
  LineEnding:      DeriveCRLF
 MacroBlockBegin: "DEFINE_RESPONSE_TABLE1|BEGIN_COM_MAP"
  MacroBlockEnd: "END_RESPONSE_TABLE|END_COM_MAP"
  MaxEmptyLinesToKeep: 2
 NamespaceIndentation: None
  ObjCBinPackProtocolList: Auto
 ObjCBlockIndentWidth: 2
  ObjCBreakBeforeNestedBlockParam: true
 ObjCSpaceAfterProperty: false
  ObjCSpaceBeforeProtocolList: true
 PackConstructorInitializers: Never
  PenaltyBreakAssignment: 200
 PenaltyBreakBeforeFirstCallParameter: 200
  PenaltyBreakComment: 30000
 PenaltyBreakFirstLessLess: 150
  PenaltyBreakOpenParenthesis: 100
 PenaltyBreakScopeResolution: 500
  PenaltyBreakString: 1000
 PenaltyBreakTemplateDeclaration: 10
  PenaltyExcessCharacter: 100
 PenaltyIndentedWhitespace: 0
  PenaltyReturnTypeOnItsOwnLine: 500
 PointerAlignment: Left
  PPIndentWidth: 2
  QualifierAlignment: Leave
  #QualifierOrder: ['inline', 'static', 'const', 'type', 'volatile' ]
  ReferenceAlignment: Left
  ReflowComments: false
 RemoveBracesLLVM: false
  RemoveParentheses: Leave
  RemoveSemicolon: true
  RequiresClausePosition: OwnLine
  RequiresExpressionIndentation: Keyword
  SeparateDefinitionBlocks: Leave
  ShortNamespaceLines: 40
 SkipMacroDefinitionBody: false
  SortIncludes: Never
 SortJavaStaticImport: Before
  SortUsingDeclarations: LexicographicNumeric
  SpaceAfterCStyleCast: false
 SpaceAfterLogicalNot: false
  SpaceAfterTemplateKeyword: false
 SpaceAroundPointerQualifiers: Default
  SpaceBeforeAssignmentOperators: true
  SpaceBeforeCaseColon: false
  SpaceBeforeCpp11BracedList: true
  SpaceBeforeCtorInitializerColon: true
 SpaceBeforeInheritanceColon: true
  SpaceBeforeJsonColon: true
 SpaceBeforeParens: Custom
  SpaceBeforeParensOptions:
 AfterControlStatements: true
    AfterForeachMacros: true
 AfterFunctionDefinitionName: false
    AfterFunctionDeclarationName: false
    AfterIfMacros: true
    AfterOverloadedOperator: false
 AfterPlacementOperator: true
    AfterRequiresInClause: true
 AfterRequiresInExpression: true
    BeforeNonEmptyParentheses: false
 SpaceBeforeRangeBasedForLoopColon: true
  SpaceBeforeSquareBrackets: false
  SpaceInEmptyBlock: false
  SpacesBeforeTrailingComments: 1
 SpacesInAngles: Never
  SpacesInContainerLiterals: false
 SpacesInLineCommentPrefix:
    Minimum: 1
    Maximum: -1
 SpacesInParens:  Custom
  SpacesInParensOptions:
    InCStyleCasts: true
    InConditionalStatements: false
    InEmptyParentheses: false
    Other:           false
  SpacesInSquareBrackets: false
 Standard: Latest
  StatementAttributeLikeMacros:
    - Q_EMIT
 StatementMacros:
    - Q_UNUSED
    - QT_REQUIRE_VERSION
    - "EV.*,"
    - EV_WM_SIZE,
    - EV_WM_DESTROY,
    - _STD_BEGIN
    - _STD_END
    - _STDEXT_BEGIN
    - _STDEXT_END
 - _EXTERN_C
    - _END_EXTERN_C
    - _EXTERN_C_UNLESS_PURE
    - _END_EXTERN_C_UNLESS_PURE
    - COM_INTERFACE_ENTRY
  TabWidth: 4
 UseTab: Never
  VerilogBreakBetweenInstancePorts: true
 WhitespaceSensitiveMacros:
    - STRINGIZE
    - PP_STRINGIZE
    - BOOST_PP_STRINGIZE
    - NS_SWIFT_NAME
    - CF_SWIFT_NAME
 

```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzcW1t34jjy_zTOCyd9iMn1IQ9czAwzBGhMOtv_Fx9hF6COLHkkmcB--v-RfJdEZ3Z39mHHpzuE0q9KJamqVCo5SAi8pwDP3t3Iu5tcoVweGH_mbAtcXiOa8H_Cj_z9asuS8_NMeIOh1594_fJnD1PZ2-U0lpjRiKIUPP_x17fFxPOHvfrJEAcqPX9cMjkfJQknn4BiRoXsfcQHxCOp-pBYEmiYlJDWcyo_vcGk1_8T_Z__NPLDJhusCnX4FOV8CKP7HpwkR6E8E_hTPFvGSI8DSpaUnLvd7RARrTmaIhqfxwQJsTlnoCYxZUledkNzQjLJPf_JG4zaK138DE4ZxBKSf8sM_pt28Ikh1JbwLxnDv8zSfj7-M_bDRXZtHa3nPzQUh4U4n4tmU6n4iemMCaL76x3jKZK9HSbQ2NB9v_xXdu_5g958_u2ldwQuMKO9m8eyqULMEd3naK9k9MZZVpGHcQxCvLAE7zDw5W4nQCrI9W2NIHhPhzsJfJkBHXEUvxcQ3dBFcY7Oy10oeR7LnIOKfb013h9kCdOoMaMC4lziIwx1KE2ByiZMqskJKNoS7TM9yXNoGoYxZ0IEaSbPc0yLDoqlMCBjllZiTRGFDmnGcmr2oNumpVeuGKYSuEPECiXLDDiSzGo1RzjCcoqBJP_T42trYA5wAjFBHCmBf9sxviClz991dOGBcTlGAkKJJPzUGaunrdC_M14LoVVCAsaMFHbURej2QMQog2QBH6TqaA472cHoQVPtbZ34pH_fcIQJpvuWJo0Kv2PaGaLW6gOdRQNZHoF3B9pvOifsY0jIkO9zLXtJF3CSCmgOxvMHFVotgo6VjM8olhgR_E_gLl7FlUDGUYxULlENqhCzQhyloAxhuWu542UVNOOIA3ofwY5xWDA4xZDJMINY7wOKQW12b1geVioFaTNqexkRFr-LJR2GmO4JVL0s4Ai8Mym1dc3RFojNYaxzzVGa_xr-yDHXVmmxdtyiYgxonv7pXipHcgyEUQd-tmt85Kdjb1jmKN0myEbPqLJiu4s5Y9mn-iu71Oun9-UJ7LAyH0bXIHNOdbbRHYPJchHYRhbG8ZITqdwGQskx3bucs-bYQJoRJM1NofcdajcaSsnxNpdWUL3uRVGMMrTFBMtzBR9hukLxe-1XVu8loPEBE1HtwDq0hBmKMd0rzIjJQy2EoxjeOMqyorEVmdRs1ebriNW6XeV4l9oYlZyR2m6KyNQKLBqlrPaCgOAkgVPtbxcQlRWbPqHaFigFkaHYtqKSebn9MW4t14UuipTuQuMrdTIW5jNGMj5cagyUPhfaCscZseR8CfF2KHLizrhmNAEq9YK69qIwI1jqIN6etYugNcSMJz-FXJ7hwt2SHygGKgvvmWMJHBHLWBrPrP2j3ODQ0QH6DR2RNuohpUw2fuboXqXkotrYrC6LiRxhivi5kzAsGG2ScwfLmFG1Y5iO3rHsdg_1eoxzIVnqkFgExGH4oh212oHq6GPL3AC31LYGeGGL1QGgHIjqrc0yowfgWCIawxyLwmELT05T1EHaa9pZgDEjeUrnOMVayI3fb1p0BrLiaJ8izej5vncX9GZv3197mSarMOT7JYfaDlEsa1uzBuv5A_dQh4Qs6ZLqnWTJlxRWwD9PLXpuYYVzveFEape-r7WjEtNcm8EFiDpz3txoM0jUrOrTtzljE-D4CGVWq1O2KmJ25nWChcpIp_pgbLbWCVrhTZ3jrZWh1ODCFmx0NwUMThlwrHRCZJhLNgEJsSx3oHJbaesyxad6xS6l-1PGAxQfHEeM657SCcWHNulrNF2ug-H41zZxtFyGG7NhtnPK_P23aDaNXobfR0EdMWOSJ1BkdEq9FQcBvIk7JWCMJOwZx2CKXMMeToURP3h3Y8_3hUzQ7vTlUHzzHsbFL6FMhi2y_9Cunqw4Zlzt_INh7_qmbAkZl-2GfptDn1mACqxOMY4Y3dHM_-L5LYdqC_XbQv-6HvVcDMaxkAnBW_0lKKdCUfGeImJRQf5IM4sqE8T3BlWeM8B0x5zkBE4OeiQ5wlIYLVssBUiDWJUmLRVzWeRnhooSp2DSDpxRUz01lgR2BhU3ISYiKuYauucZMaUjaurAMqfCFD4MSgop4ya3iFkGSYQIYbHaTpw8EQfBch5bQyUqyJsTG-8IQ-ZY1ARgalExlWqFTBFOucVhTaUuF-iuORQyKdrNnpEQwC30WUhII-DcmokYOLeXNVbam8QPJ1XoXdPGHpDVVe4gOtkLYnTE1mIjlQAZtCPE9gon8Edu6uqYxx3jH4gnzim2vChFpi_nlPEEOCSRjW7abD4hUfxu0P7IwdIYERWi5SG1bENXexiNMkZwbM6ITmHsOYlTJA8mjaUZscLLERHXTHNEE2bqQvMUOI4tqMSWWe2AHk1Vmdh9JDbRpAjJAZldMycVu8k7J1W4qZJfEJ0iiu3VVNBtbsZBHRzMSVAByQp_sZvKEoiPpl1xvScZdiJZai2BPHBA5tSmubS4xQFpM3U07XKZc1svmugCRXREHKvkzeTCBIqYYwVGwe5v761w4zTCWO5dBqu2T10LtOlbxqr9os5G2rv_4K9JDVx5gThrk_WnLf_HQiZfTP13MZXky6FNyhghNc6p-O1_NafZpyx-r7XZSxCyZa77n2R2d3-RXmVOOhMvCNN2muf5jxuljv_kDaaef9ukfB2WUG_jXUa_Ea7OMN3TgHW8K0BKyyZzNlSsAEXp08z8i3ajvFMQu5BfmGSNCEcfq9UEc4jVRLVOtr8icejoWtZSxZig3K67GAe32w6rro1BUtVM9KnGFqASieak32ormsrK_VAGy6mbuV2hR8IoTXr-YEYl7NX5VZ-4Q8hQsWs15xHPH-iaIOLnbjX_to0oAC-YTvAel1cS9x0RE4hxikhHxsCF6Ai56yB-LWyr89yaiK4SLcRv6IjCmONMfs2ZqxzUANTqzNKMcet4-TtA1lxZDOXmAKFEXC53F4zWZCiXqo1pCnOFbdR1w1AdaXT0L4UpGQFNypOxfooj_ng9n5YgfUjVyoxgj2npjJNgOlsE0ToIV8tFGESb4Wge3HgP41Hwy2wRjZcv0ctw1XLZRkxQ3ON4vh8sJoYE72GsiC72UzPqDVOz0D4Z1qd4Y8Ttwvly-2NcFaM5kyxmpC4f5ZKVMI1Sahru5nfEtK5mQEhINIcucRvrq9ChUkxXO1acZcCLWNpZ1RpWCDX1awlU6v-kZtapnqyAIiLPRZ2xKRaq0fSrUN7GFJ1PMRdyjFrXVl2ODktZNdFbcb_vlKrlzUEI9V_X2e6copYZUH2XJQ8gcIF0CgzVSXANgpG8Wuc7t3ZF_a-U5BLluA8p0Ia04KS2mvEBcRSXE2LpVhgMJG8HLJuCsympudhZ0pkUyw9aFfuaMbgKbO2b1NXqknF-zRHRu6HB24pKnj-oUUt1nNHOeDfy_AdcXHn5D54_VrmEUI4UN9_1K0rNV312rL8dGUESE0XpeXeTqrs17IADjeHiaNawI-yjXX5ru8YaUnYsy9Pz-bcXy3UKQG04jjhcIEJIcVxVrts7W3fXXTGBKzOoFscABqeMgxB1LbU2m9_h_MF4XaIttz9orv-amN5RUN8r1iGsvry-rewhfMeZjp8tSeW1S2cqVLpWJlFWMFBtekPSa1psRk0q0pbwKjDdm_cGczjhmO05yg44XpTnw4qpjm9jXTUeI2FVfRvMnO1xjMiC2XXjBlT5ZTWjTmmc5TQpfaU2aa3tBHYoJ7Ijt6wg12Hw4rVEC12_8eBWtQR1C-c_E9cN2GOHNbbQrWsOF7IN_U0w-ok07SCOCx4LssyMV4Wct6SXblOnRUW8rmxb951VhtqYsjJ8x7HGQNfm-DN4q6TuUm55BE4YSqB-98YUVOzSBMXQNpEL4qp4MKPOhN3ANFHDFle95UF1jmPEMsvwC_Qa0T2MkIBkyvicsewzIwn_yFFx0fcOjnv6sEiftAb1acdGiPJuz35Vp3fTVlLM6JDuiR2I6mZlUgjT-rTgHqyY6RhcX8jBDp861xsvmOK0uJy_aVHRqaJem3o1ruDyhRpgOUJPnYKaEOewMj2oopCCDF8xzHX26VL3er2lPBTbc_M4FmRGf76yoUQ0QUUQnSNdCqj4Kw3rO-05fne9THfd-xoFL7NNI7HguwB9XbyGwaRD20Tr4OvrbB1E34J1OFsu2q3qKPCtuP4Zt3J-1RR8i95eonD2f0HnXd6qYRKEm_Xyu9EWhZtJpA8iFjVYTExa8I-NG6waGvx1Lwr-sQnWi6jblzqvuBtKYvS6mAdhGK1e18FFzksgdRKaLTbBejocB1Gw2Ky_V80btLWKAa8CNmhrudw34JiwfZnkyw8AOqNCby0rx6G0yWDr-o5zpcPNerb4Ra1Ni7haRU56cQd6qXURRuHbbLqJFsOX7gRM7Ybio_zZfdP6KnkeJE-DJ3QFzzcP_sPN_aN_83R1ePa3cIfiB__pFu63j33_cZAMdvHD4x0a3N2Bj67ws9_3b_tP_m3_8e7-7unLnd-Hp8HjACUJ9J_ud95tH1KEyRdCjukXxvdXWIgcnm_6Tw_3j1dEF4D035z4ftx6M1y_OTC54s-K73qb74V32ydYSNFI0q_6P7e5etf1Xx_0kmb362EaM84hlr0CJzHd965yTp4PUmZ6hfyp50_3WB7y7ZeYpZ4_Vf2UH9cZZz8glp4_1eoLz5-WIzg--_8fAAD__wSlgKk">