<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 - Clang-format Add Option to Suppress Break of Template Declaration with Empty Parameter List"
   href="https://bugs.llvm.org/show_bug.cgi?id=42167">42167</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Clang-format Add Option to Suppress Break of Template Declaration with Empty Parameter List
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>8.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </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>matthias.schaefer@versasec.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>Though it is useful to break template declarations in general with the
AlwaysBreakTemplateDeclarations setting, it might not always be as useful to
break template declarations which have an empty parameter list, which is
usually the case for function template specializations, as partial
specializations as not allowed for function templates. For the sake of
completeness, it should also be possible to suppress breaking all other
template declarations which have an empty parameter list.

I propose to add a new setting SuppressEmptyTemplateDeclarationsBreak with the
options:
- Never, the default value and all breaking is done according to the
AlwaysBreakTemplateDeclarations setting,
- Functions, only breaks of empty function template declarations are suppressed
and all non-empty function template declarations and all non-function template
declarations are performed according to the AlwaysBreakTemplateDeclarations
setting, and
- Always, breaks of all empty template declarations are suppressed, non-empty
template declarations are performed according to the
AlwaysBreakTemplateDeclarations setting.</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>