[PATCH] D129443: [clang-format] Add option for aligning requires clause body

Zhi-Hao Ye via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Oct 8 05:26:50 PDT 2022


Vigilans accepted this revision.
Vigilans added a comment.

In D129443#3844805 <https://reviews.llvm.org/D129443#3844805>, @HazardyKnusperkeks wrote:

> In D129443#3844535 <https://reviews.llvm.org/D129443#3844535>, @owenpan wrote:
>
>> In D129443#3842427 <https://reviews.llvm.org/D129443#3842427>, @HazardyKnusperkeks wrote:
>>
>>> We can //fix// that regression, and I will adopt this change for my company to keep the requires expressions where they are. :)
>>
>> Then we have three options:
>>
>> 1. Only fix the "regression".
>> 2. Add the option and make `OuterScope` the default.
>> 3. Add the option and make `Keyword` the default.
>>
>> @HazardyKnusperkeks I will defer to your choice. :)
>
> Add the option, and then either way we will have a regression to somebody. `OuterScope` will regress to version 15. `Keyword` up to 14. So it should be the most reasonable to make `OuterScope` the default, since the early adapters will most be more open to change their configuration.
>
> @rymiel please add a change log note about that changed default.

I am fine with either default option with their persuasive reasons:

1. Default to `Keyword`: Interpreted as `Formally documented formatting behavior`, and the options arrangement looks more consistent with `LambdaBodyIndentation` (`Signature` (default) and `OuterScope`).
2. Default to `OuterScope`: Interpreted as `Fix the regression`, and the style looks more consistent with example codes in common concept tutorials (the expression is indented the same level as `concept` keyword, not `requires` keyword).

For consistency with `clang-format` current behaviors and options, we may prefer `Keyword`; For consistency with common current tutorial code, we may prefer `OuterScope`.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D129443/new/

https://reviews.llvm.org/D129443



More information about the cfe-commits mailing list