<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - One-line enum problem"
href="https://bugs.llvm.org/show_bug.cgi?id=37302">37302</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>One-line enum problem
</td>
</tr>
<tr>
<th>Product</th>
<td>clang
</td>
</tr>
<tr>
<th>Version</th>
<td>trunk
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>enhancement
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>Formatter
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedclangbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>mxcpin@gmail.com
</td>
</tr>
<tr>
<th>CC</th>
<td>djasper@google.com, klimek@google.com, llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>Configuration of clang-format:
AllowShortBlocksOnASingleLine: true
AllowShortIfStatementsOnASingleLine: true
BreakBeforeBraces: Custom
BraceWrapping: { AfterControlStatement: true, AfterEnum: true }
Code:
// BEFORE:
enum Enum { No, Yes };
if (statement) { doSomething(); }
// AFTER:
enum Enum
{
No,
Yes
};
if (statement) { doSomething(); }
This is similar to <a class="bz_bug_link
bz_status_RESOLVED bz_closed"
title="RESOLVED FIXED - One-line if statement problem"
href="show_bug.cgi?id=34001">bug 34001</a> (which is already fixed), but for 'enum' instead
of 'if'. The problem is that 'BraceWrapping: { AfterEnum: true }' makes it
impossible to have one-line enums.
Since AllowShortBlocksOnASingleLine + AllowShortIfStatementsOnASingleLine allow
this for 'if', probably an AllowShortEnumsOnASingleLine should be added. That
way, one can independently control whether one-line enums are allowed and
whether multi-line enums should break before '{'.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>