<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/55605>55605</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang-format] `AlignConsecutiveDeclarations` does not distinguish between functions and variables
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
timblechmann
</td>
</tr>
</table>
<pre>
considering this code:
```
float a;
int bbbbbbbbbbbbbb;
std::vector< std::vector< std::vector< int > > > function()
{
return {};
}
```
formatting it via `AlignConsecutiveDeclarations: AcrossEmptyLinesAndComments`, gives:
```
float a;
int bbbbbbbbbbbbbb;
std::vector< std::vector< std::vector< int > > > function()
{
return {};
}
```
it would be great to have the option to only align consecutive declarations for declarations of the same kind, so that function and variable declarations are not aligned:
```
float a;
int bbbbbbbbbbbbbb;
std::vector< std::vector< std::vector< int > > > function()
{
return {};
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzVU01z4yAM_TX2RdMM8Wd88CFN2tP-CQyyzS6GDGB38u9XuEnTdDqz7d6qwdgILOm9hzorz62wxiuJTpkBwqg8CCsxyfcJOybsOlfsMtZlry0PwJP88f0hZQJ0d_bhgA8yxs33C4pgXZIf4GuuGDnJn96efjYiKGuSbJdkzSVFfckFZA7D7AxEX328VUHfn8G5gLJu4iFEGlSARXGgA3utBnMghlDMQS14RKG54zG5pxJhL5z1_mk6hfMvZdDvjTzYaUITfAyfHWCgv_xX6PyGfcb8t-wHy0TavNhZS-gQBodEXLAw8gXp8iLYU0wYXdboM_AoH4ibfiDfCQgk-b3D9msUzyeEP8rIKKC35KM0VzTAjYSFO8U7_SEedwjGhte0KP-3iX6cPqlsc9nkDU-DChrbpHwkVszw8NpTSXn8Zy9VDKRFv9InlY9tOCs_ksrhBdG81erv6Pfp7HQ7hnBaWyx7pjGoMM7dRtiJFlov19fDydnfxAUtlfczNWX2XJYVK9OxbbqeSynKoqjLLUfcYbHtZbdtGOv5TmSp5h1qH4ERmFS1GcsyVmaM0ciLTcWqatdgU9cFL7a1TAqGE1d6ExNvrBtS1641dPPgaVMTQn_b5N7HC4PX-HwOo3VtUBNhFOPEjUnXmtu14L-ODKyy">