Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
I know I changed existing tests. I'm not sure what we really want here.
If you have ideas, I'm open to suggestions.
The fix looks ok, butr I don't understand the cause of the side effect? is it explicitly aligning to the v of auto v?
It's adding two spaces inside the auto v = ..., because of aligned declaration (identifier v, additional 1 space) and aligned assignment operator (=, 1 more space).
Unless the test cases are wrong, they should not be changed. The original test case looked correct to me as it was doing a continuation indent between type{ and }.
This is born out by setting ContinuationIndentWidth: 8
int i = 0;
float i2 = 0;
auto v = type{
i = 1, //
(i = 2), //
i = 3 //
};So maybe the original test is correct..
Could we resolve this with just
// Continued braced list.
if (Changes[ScopeStart - 2].Tok->isNot(tok::identifier) &&
Changes[ScopeStart - 1].Tok->is(tok::l_brace) &&
Changes[i].Tok->isNot(tok::r_brace))
return true;This seems to have caused a strange indentation problem, see https://github.com/llvm/llvm-project/issues/55161
Since this patch landed a couple of months back, I don't think we need to rush to revert it.