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

    <tr>
        <th>Summary</th>
        <td>
            clang-format option AlignTrailingComments: Leave misaligns comment-only lines
        </td>
    </tr>

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

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

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

<pre>
    I'm using clang-format in VS Code with the following setup:

        "C_Cpp.clang_format_style": "{BasedOnStyle: LLVM, UseTab: ForIndentation, IndentWidth: 4, TabWidth: 4, ColumnLimit: 0, PointerAlignment: Left, BreakBeforeBraces: Attach, SortIncludes: CaseInsensitive, AllowShortIfStatementsOnASingleLine: Never, AlignTrailingComments: Leave, SpacesBeforeTrailingComments: 2, SpaceBeforeCaseColon: false, InsertNewlineAtEOF: true}",

However, this setup is indenting my comment lines incorrectly. My expected result would look like:

        int main(int argc, char* argv[]) {
                // create 10 threads
                pthread_t threads[10];
                for (int i = 0; i < 10; i++)
                        pthread_create(&threads[i], NULL, thread, NULL);

                // wait for a bit then stop the threads
                sleep(3);
                for (int i = 0; i < 10; i++) {
                        // pthread_yield();  // deprecated
                        sched_yield();
                        pthread_cancel(threads[i]);  // cancel thread
                }
        }

However, the result of formatting with the above setup is the following:

        int main(int argc, char* argv[]) {
         // create 10 threads
                pthread_t threads[10];
                for (int i = 0; i < 10; i++)
                        pthread_create(&threads[i], NULL, thread, NULL);

         // wait for a bit then stop the threads
                sleep(3);
                for (int i = 0; i < 10; i++) {
          // pthread_yield();  // deprecated
                        sched_yield();
                        pthread_cancel(threads[i]);  // cancel thread
                }
        }

This seems to be caused by the setting `AlignTrailingComments: Leave`. Setting this option to either `Never` or `Always` works fine with comment-only lines (but obviously changes the behaviour for actual trailing comments).
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzcVstu6zYQ_Rp6M4ghU35p4YUfNRrANyng3HQZUNRI4g1FCuTIrv--oOjYcZK2KNBFW8CwyJnD4Znh4UN4ryqDuGCTFZtsBqKj2rrFN0H441kRvg5yW5wW94zPGui8MhVILUx1V1rXCAJl4HkPa1sgHBXVQDVCabW2xwD1SF3L0iVLNiy5_GeM8_XLum2HfaiXGOrF00kj45ylSwif2WolPBaPZt870iXsds_fGF_Dd49PIg-WrXX3pkBDgpQ1wRe7v6qC6gAYB9uTyG8Na6u7xuxUoyjYkmD7xSpD6JZaVaZB0zt2WFLwrRyK1xWW1uHKCYk-OJdEQtbBvbeO7o3UXRE9a-Hx3ng0XpE6YIAsQ0n2dQCWexKEYQr_aJZ7ZSqNO2X6DB_wgC7iVWWenFBamWptmx4eKYkYcd8GIpHUV0B-AUVMILW22prgLIX2GMvl0dEDHrUyuKSfHrfBTa5DNtuEVeDr94v3sz2-MaRa-bjAoDyovuxhzZsTyEgDQszgktY5lKRPQ_h2AvytRUlYgEPfaYKj7XQB2tpX0OoVP8tFGYJGKMP4PDSFq2QgIGvhGF-G_iGql_EM2Gx11VmQ2pbxLUiHghBGCVDtUBT-PaaNthe6OCerURLipTexSuvgzEEBSzeQsHTVN9cwim3GV_0vu-FwnSLyYHzO-PQ6meq5r-Hh-24XSxs8V0v2jsin1I5CEQRqAnIVUkADnmzbb8UvsvUasWV8nt7G_bsJfir0hdBbrieFuuhTDfMAnN0Ftg6lICw-DPeyxo-j_qiMwkjUjM8_1vBmpoh6q-b7SLPNtXttfxI4vknUlhAPqV7hl4NO5PaA1z1wc_b9gzKG_6uI4V8k4Ytq_tPyfYqHMjYeyEKOIEXnsYD81NfSY1QwmyZ_ccFMkyHsz-j-pLdtuGFDVFRUowsx4m01TcC6GPIoTj70j9a9eiiVOb8KzhfCnTX6dL4VGJ_nHYHND8p2Xp_CPjAVxl2UYy2C3UVVSOqEBjqTfYvmGc-Gg2KRFlmaiQEuRrPRJBvPJlkyqBeSZ2OZzKd8VmRpMs2lzMtilmfTscjLiZwN1IInfJxMRrMRT6ZpMizyZJ6maZZNUzkeo2TjBBuh9FDrQzO0rhoo7ztcZHySJgMtctS-fzZx_v5JFC7NyWbgFmHYXd5Vno0TrTz5ayBSpHFx85A61_fPlwUa5UVA-C9KOuicXtREbcBHDVWK6i4fStswvg2znz93rbM_UBLj2z4nz_i2T-v3AAAA__-fGwk5">