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

    <tr>
        <th>Summary</th>
        <td>
            clang-format always aligns stream operator << with spaces
        </td>
    </tr>

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

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

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

<pre>
    ## Description

The `UseTab` option is set to `Always`, but clang-format is using spaces to align the `<<` operator in continued lines. This behavior occurs even when all the `Align*` options are set to `false`. Also `BreakBeforeBinaryOperators` has no influence on the alignment (or even breaking before/after) of the stream operator `<<`.

The unwanted leading spaces then trigger other format checkers like EditorConfig (which is set to `indent_style·=·tab`)

## Steps to reproduce

1. Create a minimal `.clang-format` file with the following configuration:
```yaml
---
AlignAfterOpenBracket: DontAlign
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: DontAlign
AlignTrailingComments: false
BreakBeforeBinaryOperators: NonAssignment
ColumnLimit: 80
ContinuationIndentWidth: 4
IndentWidth: 4
TabWidth: 4
UseTab: Always
...
```
2. Use clang-format to format the following code:
```cpp
void someFunction() {
        std::cout << someVariable << "Some random string for std::cout " << someOtherVariable << ", "
                << andAnotherOne << andOneMore << ", some final text.";
}
```

## Expected behavior

The `<<` operators in the continued lines should not be aligned and only be indented with tab characters, not with spaces:
```cpp
void someFunction() {
        std::cout << someVariable << "Some random string for std::cout "
                << someOtherVariable << ", " << andAnotherOne << andOneMore
                << ", some final text.";
}
```

## Actual behavior

The `<<` operators in the continued lines are indented with three tabs and with two additional spaces for alignment:
```cpp
void someFunction() {
        std::cout << someVariable << "Some random string for std::cout "
                          << someOtherVariable << ", " << andAnotherOne << andOneMore
                          << ", some final text.";
}
```

## Environment

- clang-format version: `Debian clang-format version 14.0.6`
- Operating system: Debian Testing x86_64

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMVlGP2jgQ_jXmZUSUdSDAAw8BinRS230ovXusJs6E-Naxke1A-fcn29BlKXfXO_WhElrYyXj8zXwz3wSdk3tNtGTTFZtuRjj4ztjli0bbfhrVpjkvGS8YL2BDTlh58NJolm9YXqW_u46AlflnRzusWZmDiS4gHTjy4E14WqkTnh0rc8bXUA8ehEK9H7fG9uiD6-Ck3oM7oCAXzqCSew0-xWbFOnxibLLojQWpQRjtpR6oASU1uQx2nXRQU4dHaSwYIQbrgI6k4dSRBlTqGrAK0RmvXuE6QEs3gFtUjliZZ1ApFy0rS_iyotZYWkmN9vx8wRLSgg4daANSt2ogLQhMQh_z6El7YHxubIJTh1Ah3zqGY3yLrSfL-AJMG485bwn713Rvi5DdV3_QJ9Q-1IGwuS1jyNpbud-TBeM7snApuOhIvJB1oOQLwbtGemPXRrdyH2CeOim6t_xJ3ZD2X5w_K2JrzlYzVmzSDx9ZZ3xxC-vSMp88HSKdlg7WNIOgW6enDNaW0BMg9FLLHlW4K7vtjVDbViqCk_RdLE1rlDKnkKaIiAeLsSWL69Vlnj5n7FUyjcfj9CPyXoVaPx9IryyKF_KsqGBjtE9N8eq3NtqRGLw80gcU1rjgmPrioVMVJylw_W-eGxIKE-yHru-cwAM1H-kUOzu4vKfW33jE3tON-zvsO4tSSb1fm_4RoH_o5aKCj0a_5pIOrI0aev1e9jKWa55fzXEEYya_xRb5Qza-Cy6T5PHYusP63nTRj6KCi1ZEa5Zld6ymf3kGnx29VRFvru193yYNfd8d4nBIlqORDTjT03bQInYSn4dJZLPVtVkXzjchQlEJM3hIkxjP_I5WYq3oamOcfzI9QSDH9GGMA4LWWLgLwfltmOcwnA9iBbUMX1cc4ZMeom4qHWf6WX87gbp51vTB2PsY4Q5opUYFnr76LJiLa3qzzcMSvxnkd18PJILEXOX1wQb4XqVdkOlAxp1Ug-vMoBrQxkN90UhqAnwwWp2DLQkONZe5xxpEhxaFJ-tCRuFofJS07hfk9wFpP0A1_Bi_D4L_LKor4QdUP4nosFTvqOwsUSDURb6T7WQAm0YGdlBd11eo6rf1-asTnC_gPwz0_2H55oafNtX6KK25kfnLunyrq0eyLi3YQP6Gaon6oQc8TbI8K7_dNYa0VuIrydl56uO6SgF25OKDr_PyS3nZAaNmWTSLYoEjWj6VMz6b8nI-GXXLksrZpJjPy7qY1lTks-lsWkynxYQmxWRa0kguec6L_CkvnoriiU-yGW-mZV4202Iyn-UtsUlOPUqVKXXsM2P3I-ncQMvpYraYjRTWpNz1Fdgug9O4HvaOTXIlnXevx7z0ipZv0se4sFKvuu9f3RJnN2I1Gqxadt4fomzxLePbvfTdUGfC9Ixvw12Xr_HBmj9JeMa3Ea9jfBsh_xUAAP__JPWc7Q">