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

    <tr>
        <th>Summary</th>
        <td>
            [clang-format] C# attribute on auto property lead to strange formatting
        </td>
    </tr>

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

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

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

<pre>
    Hey when i execute clang-format.exe --verbose --style=file -i Program.cs on this code:

`using System;

namespace ConsoleApp2
{
 [AttributeUsage(AttributeTargets.All)]
    public class SimpleAttribute : Attribute
    {
    }

    internal class Program
    {
 bool AutoAllowKnownApps
        {
            get; 
 [Simple]
            set;
        }

        static void Main(string[] args)
        {
        }
    }
}
`
i get a really strange result code

`using System;

namespace ConsoleApp2
{
    [AttributeUsage(AttributeTargets.All)]
    public class SimpleAttribute : Attribute
    {
    }

    internal class Program
    {
        bool AutoAllowKnownApps
        {
 get; [Simple]
            set;
        }

            static void Main(string[] args)
            {
            }
 }
}
`

i found out that it is related to the attribute when removing it everything seems to format correctly.


only for completenes i use this config but it also happens with the default config
`Language: CSharp
BasedOnStyle: Microsoft
Standard: c++20
UseTab: Never
IndentWidth: 4
ColumnLimit: 120
SortIncludes: CaseSensitive

AlignConsecutiveMacros: true

NamespaceIndentation: All
IndentCaseLabels: false
IndentPPDirectives: None
IndentWrappedFunctionNames: false

AllowShortFunctionsOnASingleLine: None
AllowShortBlocksOnASingleLine: false
AllowShortIfStatementsOnASingleLine: Never
AllowShortLambdasOnASingleLine: Inline
AllowShortLoopsOnASingleLine: false

AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false

BinPackArguments: false
BinPackParameters: false
FixNamespaceComments: false
CommentPragmas: '^(\\|\/)*\W*(<\w*|\\\w*){1}' # Don't mess around with doxygen

BreakBeforeTernaryOperators: true
BreakConstructorInitializers: BeforeColon
BreakInheritanceList: BeforeColon
BreakStringLiterals: true

ConstructorInitializerAllOnOneLineOrOnePerLine: true
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DerivePointerAlignment: false
PointerAlignment: Left
KeepEmptyLinesAtTheStartOfBlocks: false
AlignAfterOpenBracket: Align
AccessModifierOffset: -4

SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 4
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: true
SpacesInParentheses: false
SpacesInSquareBrackets: false
BreakAfterAttributes: Leave

BreakBeforeBraces: Custom
BraceWrapping:
  AfterNamespace: true
  AfterEnum: true
 AfterStruct: true
  AfterClass: true
  AfterUnion: true
 AfterFunction: true
  AfterExternBlock: true
  AfterCaseLabel: true
 AfterControlStatement: true
  AfterObjCDeclaration: true
 BeforeCatch: true
  BeforeLambdaBody: true
  BeforeElse: true
 BeforeWhile: true
  IndentBraces: false
  SplitEmptyFunction: true
 SplitEmptyRecord: true
  SplitEmptyNamespace: true
`
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUWF9v6joS_zThxWoFgRT6wEOAUy069IAuPTrPQzJJfOvYWXsCZT_9yk5CAoRztav7clEFxPOb8fz5zdgFjOGpRJx7wcILVgMoKVN6_qEOHMxbKT8HBxWf5__CMztlKBln-IVRScgiATJ9SpTOgZ7xC9nT0xH1QRn7zdBZoDdeJVwge-Jsp1WqIX-ODFOSUcYNi1SM3jj0hitv2Ly_DEvDZcr2Z0OYe-NFVyohR1NAhGyppFECw6Lwa8C0RjIvWIREmh9Kwp8GUvT82WXhA3SKZJ5DITz_1QtWtRJjrCgPgkc2KGPYnueFwIsa88Yhuzy1Ou2u7mHVddYucUmoJYjaap2DPv2DUoKFJalQCHX6LtVJhkVhWujdds0rRfLGC9ZGX_l-FVvzMg57a_TObQclIB6xo-IxewcuPX9mSHOZVjRhoFNjU_h7By_Gr3e6fHkZVl-4DYMB0whCnJkhDTJFptGUgiqi_L0sse78I4lSv_5HvjQk-bvY8X8z5CGNW6b8hiYNWRJVypipkhhlQIwT44ZpFEAYM1KMMmRwqYkbWxpzdbSc4cTwiPpMmX0yiLmxKtUYY5HSGiMS5-crwrl3JcXZ4likbA4JJRrGWWmwmWcy4Sk7lM4jEEaxDIoCpWEnTpnzKsYEKkpb7CW8Dci0tBQch2y5z0AXlWgBBuOt3FfDNGTvPNLKqIQq8Z5AxqBjK4o8f-H5C79O1U-DH3Cwgh823GpxLWOU9IvHlFnJpFpdKlHmcsNzTnZ11JjYK01rGYkyRuMcA4N7lIYTP171Yyh4Km2z2XOBH_EdrJdWhXR5hfzR9GblCRBX0rWMEF0P7U4bOKBwRhIQBrvi3W7FbZX4sXLsh5JX8l_apj1-K2VkN3Cb3hhqHBfqtM-UpgZrtjLcc5kK3HCJ18Zb9EKo6PMe2rHfYtfJnoAwR0k9xtvatBobyA8x3IPXUvB7XzZKFb91pVE4wdksNMJnmBDqP5BKLT_OxV2QF9wCE6XxvRTE7cZ719z9iVxwuYPoM9Rp6QK9AdXiHWjIkVDfyt_414UZS5X3maiXdxrSHJzQ86de8M3zZ16wtH9T9-6_2Znjh16w_GU__Jk3toKTfaggweXZf_Wmi5GdM_6Uef6YrZT0_CmxHI1hoN2Ycb0bq69zivIq5jZHH3Z46_O2QA2k9A31HdC2B-kyIqXXkhMHwf9TJ6KysVRCyY7CWmaoOYGMcMMNPQZWddlwQg2it-v69w6F2MqtdJTZ6q3EHeqGPq2FpZLEZek69cH4KIrRaKEhwtg6eplVneKtUPMj7pQ75ty0sLW8AfWJN9iMuu-Ixbe8oLN10YT0keGeQNM2qZrxrv94Kh3RtwVK690nUjVpeFpnL4wiNOZdxTzhqLdJYirI06SbvL0lpbO0dKEtwdx63kI2KuURiB_qMeQD88IeVN_xfFLV6L7FVXUO3cXcZuIBrzrYmxo8NtphVcWjRxZ3oFFWY19J0kq0U6yDXUtXEwemDM3dnHUoU3eJBjtI0m6HT7qwtQztDOu3sZZt_v9qv7U9jQi4tIzu64sG9teG9v8uQWNNoLu5dhmnlzufqWgL1ydkZ1a4KlWJLQ2pvAFAhO7csheo8eW65YxfZuN1ELX0myzzG4Fb37uW71VZ2ltmr-Sn5LekqATNAdnvwpe9vrpG7N-vOc_7LN_yq9fC9vDncoWRAA09XtRNABRlt9qVqDpSFyo-98u_2ZL22fyVcXGX9moOtoXsMIKxfSE4ua54kLIW8AdG9QToWm_lD-ruvQwH8Xwcv45fYYDz0dT3A384mQwH2TyaBgFiAgEe8PUwmvrT2QhhiMkQDtPZazzgc3_oT4az4Wg0DsbB6_NL8DKJxv4oCZKx_zIbepMh5sDFsxDH_FnpdMCNKXE-Go4ms-lAuGuZ-7HA97u_AHi-7wWrgZ5bvadDmRpvMhTckGktESfhfmi4UgxWbGkP3_bGriSDkhQrtCpQ05kJBHexb_4xrDSJy3RQajHPiApbCXf6v6WcsvLwHKnc89_s3vXHU6HVnxiR57-5kIznv9VRHef-fwMAAP__iLNdkg">