gecko-dev/memory
Nathan Froyd b47e23e17a Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium
glibc marks various allocation functions as `throw()`.  This addition
hasn't been a problem until we tried to enable C++17, where clang
started complaining that we were redeclaring functions with mismatched
exception specifications.  Peculiarly, glibc declares virtually
everything we redeclare as `throw()`, but clang only complains about the
mismatches for a particular subset of functions.

The approach taken in this patch is to add another potentially defined
macro to malloc_decls.h, `NOTHROW_MALLOC_DECL`.  This macro works
exactly like `MALLOC_DECL`, except that clients can define
`NOTHROW_MALLOC_DECL` to add appropriate `throw()` specifiers when
declaring functions at global scope, and thereby avoid mismatched
exception specifications.

Differential Revision: https://phabricator.services.mozilla.com/D44045

--HG--
extra : moz-landing-system : lando
2019-09-04 23:40:15 +00:00
..
build Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
gtest
mozalloc Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
replace
volatile
app.mozbuild
moz.build
moz.configure