<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - -Wimplicit-exception-spec-mismatch fires on implicitly generated operator delete"
   href="http://llvm.org/bugs/show_bug.cgi?id=16638">bug 16638</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>FIXED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - -Wimplicit-exception-spec-mismatch fires on implicitly generated operator delete"
   href="http://llvm.org/bugs/show_bug.cgi?id=16638#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - -Wimplicit-exception-spec-mismatch fires on implicitly generated operator delete"
   href="http://llvm.org/bugs/show_bug.cgi?id=16638">bug 16638</a>
              from <span class="vcard"><a class="email" href="mailto:richard-llvm@metafoo.co.uk" title="Richard Smith <richard-llvm@metafoo.co.uk>"> <span class="fn">Richard Smith</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=16638#c7">comment #7</a>)
<span class="quote">> I'll file a DR against section 3.7, but clang should mark these as noexcept.</span >

This is already covered by core issue 1552; clang already marks these as
'noexcept'. The question is, is the exception specification implicit or
explicit? If it's implicit, then

  void operator delete(void*) noexcept;

is ill-formed. If it's explicit, then

  void operator delete(void*);

is ill-formed (even though it's implicitly noexcept).

Both of these patterns appear in real code. Clang currently diagnoses the
former and not the latter, which is the opposite of the committee's intention,
but either way we're going to upset someone.

Fixed in r201002. We'll have to see if this breaks people enough that we need
to turn off the ExtWarn by default.</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>