<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/55379>55379</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
SplitEmptyRecord inconsistencies
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
yamt
</td>
</tr>
</table>
<pre>
i want to format my source code as the following.
```
struct foo {
};
struct foo2 {
int a;
};
class bar {
};
class bar2 {
int a;
};
```
with clang-format version 13.0.1,
i was able to do that with a style like the following.
(`AfterFunction: true` is actually necessary.)
```
Language: Cpp
BasedOnStyle: LLVM
BreakBeforeBraces: Custom
BraceWrapping:
AfterFunction: true
AfterStruct: false
AfterClass: false
AfterUnion: false
```
however, with clang-format version 14.0.3,
it formats differently.
```
struct foo {};
struct foo2 {
int a;
};
class bar {};
class bar2 {
int a;
};
```
if i change the style to `AfterClass: true`,
they format like:
```
struct foo {
};
struct foo2 {
int a;
};
class bar
{
};
class bar2
{
int a;
};
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy9U11vmzAU_TXmxSoCE_LxwEPTLE-ZJq3a9nwxF_Dq2Mg2jfj3uxCSdlVUdVI1CUHic3x8fe65pa2GQvETmMCD5bV1Rwj8OHBveyeRS1shB89DiwRqbU_KNDFLdiy5Z8tkfqa_PrheBmJZzlbbmbLasWz7FhcvBM4VnQxX0usNUoP3vAR3W-8Kf1DuTbnn90mFlpOSae7muz-j88oanmZxEqdMPJyJo0eeQ6lx9Kmy5AiRp-3AfRhoXasnvG2UWNOx93VAt--NDCTPsntOfiCtc0W6MvSg9cANSvQe3BAzsblZ94Fq7aHBUeGh686LW_BYfTOPYx0jcDj8_DojDuFpi3Q53Dog8Wlf74M9Xgi0-stB11HBBF6MvF3ua_BxaugI1aD939jD2Jzb0A8zC76CbvamtSekblAL-DttWlCbspc2hTnDnleqrtGhCXr4UGA_L6qfHVJVc8VlS7c_5-scN4rhJVVXt-dIXe0g9nAZ6jGe1_7-5wm-QO-O8RvSP9gUVUVWbbINREEFjcVjp1X4cuzC8B2ldRUpSWu88gGNVOij3umiDaEbTWNiT09DCevLWNJYiL3Wz5fPXefsb6SYi73yvqf5Efs8z1abqC0W6TLFzToVAqWsM6wgXy5lmkGeYyXXEGkoUfuC5VsmhMETnyToN8t3kSpEIkSSp2myyZZZGteQ1rBCuRC4FutyxRYJHkHpeKwjtq6JXDGVVPaNJ1DTffwLSDaqxiBOx5E-9KG1rhjgGKLp3GKq-w-687ls">