gecko-dev/memory/mozalloc
Mike Hommey 8855262939 Bug 1269171 - Change how mozalloc.h is hooked in STL wrappers. r=froydnj
Since the introduction of the STL wrappers, they have included
mozalloc.h, and multiple times, we've hit header reentrancy problems,
and worked around them as best as we could.

Taking a step back, all mozalloc.h does is:
- declare moz_* allocator functions.
- define inline implementations of various operator new/delete variants.

The first only requires the functions to be declared before they are used,
so mozalloc.h only needs to be included before anything that would use
those functions.

The second doesn't actually require a specific order, as long as the
declaration for those functions comes before their use, and they are
either declared in <new> or implicitly by the C++ compiler.

So all in all, it doesn't matter that mozalloc.h is included before the
wrapped STL headers. What matters is that it's included when STL headers
are included. So arrange things such that mozalloc.h is included after
the first wrapped STL header is fully preprocessed (and all its includes
have been included).
2016-05-22 08:32:40 +09:00
..
staticruntime Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07:00
moz.build Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07:00
mozalloc_abort.cpp Bug 1203476 - Fix an Android-only warning in mozalloc_abort.cpp. r=glandium. 2015-09-10 16:20:19 -07:00
mozalloc_abort.h
mozalloc_oom.cpp
mozalloc_oom.h
mozalloc.cpp bug 1171122 - Swap some XP_MACOSX for XP_DARWIN in mozalloc. r=glandium 2015-03-27 22:53:02 -04:00
mozalloc.h Bug 1269171 - Change how mozalloc.h is hooked in STL wrappers. r=froydnj 2016-05-22 08:32:40 +09:00
msvc_raise_wrappers.cpp Bug 1248416 - add symbols for bad_function_call exception for C++ runtimes. r=nfroyd 2016-02-24 20:00:10 -05:00
msvc_raise_wrappers.h Bug 1248416 - add symbols for bad_function_call exception for C++ runtimes. r=nfroyd 2016-02-24 20:00:10 -05:00
throw_gcc.h Bug 1259537 - Unbreak libc++ build after bug 1245076. r=glandium 2016-05-01 09:32:10 +00:00
throw_msvc.h Bug 1120793 - Remove obsolete _Throw wrapping. r=froydnj 2015-08-21 14:28:41 +09:00