On Thu, 22 Dec 2022 23:05:03 GMT, Kim Barrett <kbarr...@openjdk.org> wrote:

> Please review this change to provide and use mechanisms for dealing with uses
> of the standard assert macro (from <assert.h> or <cassert>) in 3rd party code
> that we use in HotSpot.
> 
> We provide a pair of utility header files, to be included before and after a
> header that may use (and so include) the standard assert macro.  These new
> headers provide a scope in which the HotSpot assert macro is not defined, and
> then reinstated after.
> 
> We also define NDEBUG in release builds of HotSpot, so any uses of the
> standard assert macro in such 3rd party code will be disabled.
> 
> Finally, we use the new utility headers in some gtests and in our gtest
> wrapper header (unittest.hpp), eliminating problems the gtest implementation
> and with some versions of some standard libraries that the tests use.
> 
> Testing:
> mach5 tier1

Not pretty, but effective.

Do we need some text added to the hotspot style guide to describe this usage? 
Should we bracket all includes of system headers with these, or only those 
known to cause a problem?

Thanks.

-------------

Marked as reviewed by dholmes (Reviewer).

PR: https://git.openjdk.org/jdk/pull/11770

Reply via email to