[LLVMbugs] [Bug 16638] -Wimplicit-exception-spec-mismatch fires on implicitly generated operator delete

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Feb 7 14:51:40 PST 2014


http://llvm.org/bugs/show_bug.cgi?id=16638

Richard Smith <richard-llvm at metafoo.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #8 from Richard Smith <richard-llvm at metafoo.co.uk> ---
(In reply to comment #7)
> I'll file a DR against section 3.7, but clang should mark these as noexcept.

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.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20140207/317bac15/attachment.html>


More information about the llvm-bugs mailing list