diff options
Diffstat (limited to 'dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch')
-rw-r--r-- | dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch b/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch new file mode 100644 index 000000000000..eadfe6197389 --- /dev/null +++ b/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch @@ -0,0 +1,21 @@ +Fix build with GCC 6 due to lifetime issues. + +--- a/googletest/src/gtest.cc ++++ b/googletest/src/gtest.cc +@@ -2654,10 +2654,12 @@ + test->Run(); + } + +- // Deletes the test object. +- impl->os_stack_trace_getter()->UponLeavingGTest(); +- internal::HandleExceptionsInMethodIfSupported( +- test, &Test::DeleteSelf_, "the test fixture's destructor"); ++ if (test != NULL) { ++ // Deletes the test object. ++ impl->os_stack_trace_getter()->UponLeavingGTest(); ++ internal::HandleExceptionsInMethodIfSupported( ++ test, &Test::DeleteSelf_, "the test fixture's destructor"); ++ } + + result_.set_elapsed_time(internal::GetTimeInMillis() - start); + |