gtest/gtest.h include assert.h which will define the assert macro, but hotspot has its own standards incompatible assert macro that takes two parameter. The workaround is to undef assert and then re-define it. The re-definition must unfortunately be copied since debug.hpp might already have been included and a second include wouldn't work due to the header guards in debug.hpp.