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

    <tr>
        <th>Summary</th>
        <td>
            Formatting chained stream output (bitwise left shift) operators <<
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    In clang-format 18.1.0-18.1.4 the following code doesn't changed after formatting based on Google-style:

```
stream << "A" << "B" << "C" << "D";
```

In other words as long as we fit in line length, all is places in one line.

But in 18.1.5 and 18.1.6 every operand is placed on the different line despite the allowed length of line like this:

```
stream << "A"
       << "B"
       << "C"
 << "D";
```

Which behavior is considered correct? Is there a way to configure this behavior by some format option?

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJycU92umzAMfppwY7VKk9KfCy5OWzGdJ9h1IAaypXGVmHZ9-ynAUc-RtosNoQTzxZ_tz45JyfUBsRLlSZSXwow8UKzePP4iP3LRkH1W7wFab0K_6iheDcPmsN6s5WratsADQkfe08OFHlqyCJYwBaH2DO1gQo8WTMcYYfbnfK4xCS1QgG9EvcdV4qdHod-EvAj5se7k8k5m4ojmCkKfhT6DUOpNKPXJPH01z1_Ni1BK6NMfmef1PQDxgBEeFG0Ck8BT6PP-QOgcgwvgXUDwGHoehDqD8R5cgps3LaaMU4ZdwPVn4tM4-U56lWCCnT93gHeMT6Abxvzzg2iSJatqXddhxMBzWIvp5hgnyGS90S6pAHVLZu5nxl36DyVnCObnq6p_gc4v6F90_j64doAGB3N3FHPZLYXkLEa00FKM2LLQNbynXGpEMPAwT2DK5zrXj3Gu8UXRPCHRFZf5ArqxoyB0PccrbKXtUR9NgdVmv9npw05pWQzVweybw3HTYmnUbmd1pxuDe1Puy506lFIWrlJSbWWp1EaX-41cHxu5VfJgVduUnW2M2Eq8GufX3t-va4p94VIasTpqqbeFNw36NF0tpQI-YAKzPuWliFX2WTVjn8RWepc4vVjYsceqfl2XdjAuoIWlczTybWQQ6tA4friUZ7JjSIPrWKjjPFJMMS2NKcboq4H5Ng2GqoWqe8fD2KxbugpV58DLtrpF-pE7oOop3SRUPZdzr9TvAAAA__8CF0CF">