gecko-dev/memory/build
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
..
Makefile.in
Mutex.h
Utils.h
fallback.cpp
malloc_decls.h Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
moz.build Bug 1523276 - Implement PHC, a probabilistic heap checker. r=glandium,gsvelto 2019-07-03 09:26:11 +10:00
mozjemalloc.cpp Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
mozjemalloc.h
mozjemalloc_types.h Bug 1376408 - Randomize free region selection for small allocations in a run r=glandium 2019-06-18 21:18:23 +00:00
mozmemory.h Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
mozmemory_wrap.cpp Bug 1411613 - mark certain allocation functions as non-throwing; r=glandium 2019-09-04 23:40:15 +00:00
mozmemory_wrap.h Bug 1559379 - Export C++ allocation functions from mozglue on all platforms. r=froydnj 2019-06-27 22:07:42 +00:00
rb.h
replace_malloc.h
replace_malloc_bridge.h Bug 1523276 - Implement PHC, a probabilistic heap checker. r=glandium,gsvelto 2019-07-03 09:26:11 +10:00
zone.c