Add noexcept to custom non-throwing new operators.
Both libc++ and libstdc++ declare non-throwing new operators as noexcept and overloads must also be noexcept. This fixes a -Wmissing-exception-spec warning with clang. gdb/ChangeLog: * common/new-op.c (operator new): Mark 'noexcept'. (operator new[]): Likewise.
This commit is contained in:
parent
793c128d03
commit
bbe910e6e1
|
@ -1,3 +1,8 @@
|
|||
2016-11-24 John Baldwin <jhb@FreeBSD.org>
|
||||
|
||||
* common/new-op.c (operator new): Mark 'noexcept'.
|
||||
(operator new[]): Likewise.
|
||||
|
||||
2016-11-24 Andreas Arnez <arnez@linux.vnet.ibm.com>
|
||||
|
||||
* dwarf2loc.c (copy_bitwise): Use memcpy for the middle part, if
|
||||
|
|
|
@ -76,7 +76,7 @@ operator new (std::size_t sz)
|
|||
}
|
||||
|
||||
void *
|
||||
operator new (std::size_t sz, const std::nothrow_t&)
|
||||
operator new (std::size_t sz, const std::nothrow_t&) noexcept
|
||||
{
|
||||
/* malloc (0) is unpredictable; avoid it. */
|
||||
if (sz == 0)
|
||||
|
@ -91,7 +91,7 @@ operator new[] (std::size_t sz)
|
|||
}
|
||||
|
||||
void*
|
||||
operator new[] (std::size_t sz, const std::nothrow_t&)
|
||||
operator new[] (std::size_t sz, const std::nothrow_t&) noexcept
|
||||
{
|
||||
return ::operator new (sz, std::nothrow);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue