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:
John Baldwin 2016-11-24 12:01:24 -08:00
parent 793c128d03
commit bbe910e6e1
2 changed files with 7 additions and 2 deletions

View File

@ -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

View File

@ -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);
}