HomePhabricator

Bump googletest to 1.10.0

Authored by bkramer on May 14 2021, 10:15 AM.

Description

Bump googletest to 1.10.0

Details

Committed
bkramerMay 14 2021, 10:16 AM
Parents
rGe488bf815fbd: Revert "Do actual DCE in LoopUnroll"
Branches
Unknown
Tags
Unknown

Event Timeline

Herald added subscribers: Restricted Project, dschuff. · View Herald TranscriptMay 14 2021, 10:16 AM
hctim added a subscriber: hctim.May 14 2021, 2:34 PM

Looks like this may have broke the sanitizer buildbots. I'm still bisecting, but wanted to give the early warning sign:

https://lab.llvm.org/buildbot/#/builders/77/builds/6321/steps/7/logs/stdio

[2437/4340] Building CXX object lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o
FAILED: lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o 
CCACHE_CPP2=yes CCACHE_HASHDIR=yes /usr/bin/ccache /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm_build0/bin/clang++ -DGTEST_HAS_RTTI=0 -DGTEST_HAS_TR1_TUPLE=0 -D_DEBUG -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -Ilib/Testing/Support -I/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/lib/Testing/Support -Iinclude -I/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/include -I/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googletest/include -I/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include -gmlt -fPIC -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG  -fno-exceptions -fno-rtti -UNDEBUG -Wno-suggest-override -std=c++14 -MD -MT lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o -MF lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o.d -o lib/Testing/Support/CMakeFiles/LLVMTestingSupport.dir/Error.cpp.o -c /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/lib/Testing/Support/Error.cpp
In file included from /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/lib/Testing/Support/Error.cpp:9:
In file included from /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/include/llvm/Testing/Support/Error.h:16:
In file included from /var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include/gmock/gmock.h:59:
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include/gmock/gmock-actions.h:457:3: error: definition of implicit copy constructor for 'PolymorphicAction<testing::internal::ReturnNullAction>' is deprecated because it has a user-declared copy assignment operator [-Werror,-Wdeprecated-copy]
  GTEST_DISALLOW_ASSIGN_(PolymorphicAction);
  ^
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googletest/include/gtest/internal/gtest-port.h:682:8: note: expanded from macro 'GTEST_DISALLOW_ASSIGN_'
  void operator=(type const &) = delete
       ^
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include/gmock/gmock-actions.h:1013:10: note: in implicit copy constructor for 'testing::PolymorphicAction<testing::internal::ReturnNullAction>' first required here
  return MakePolymorphicAction(internal::ReturnNullAction());
         ^
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include/gmock/gmock-actions.h:457:3: error: definition of implicit copy constructor for 'PolymorphicAction<testing::internal::ReturnVoidAction>' is deprecated because it has a user-declared copy assignment operator [-Werror,-Wdeprecated-copy]
  GTEST_DISALLOW_ASSIGN_(PolymorphicAction);
  ^
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googletest/include/gtest/internal/gtest-port.h:682:8: note: expanded from macro 'GTEST_DISALLOW_ASSIGN_'
  void operator=(type const &) = delete
       ^
/var/lib/buildbot/sanitizer-buildbot6/sanitizer-x86_64-linux-android/build/llvm-project/llvm/utils/unittest/googlemock/include/gmock/gmock-actions.h:1018:10: note: in implicit copy constructor for 'testing::PolymorphicAction<testing::internal::ReturnVoidAction>' first required here
  return MakePolymorphicAction(internal::ReturnVoidAction());
         ^
2 errors generated.

Yes, my bisect landed on this commit as well; this is blowing up a ton of compiler-rt sanitizer tests.

I landed a couple of fixes for the deprecation warnings. Is there more?

hctim added a comment.May 14 2021, 3:47 PM

Looks like a558ebbd6f92457be0cd399b166886ea6d8ffb14 and cb846654c63b6bf35a0fd1629b86e0f1f78a9d55 are bring the bots back up: https://lab.llvm.org/buildbot/#/builders/77/builds/6339. I'll keep an eye out. Thanks for the fast fix-forwards.

This compilation error (reproducible on GCC 6.2) is still not fixed unfortunately:

../unittests/IR/PassBuilderCallbacksTest.cpp: In member function ‘virtual void {anonymous}::LoopCallbacksTest_InstrumentedInvalidatingPasses_Test::TestBody()’:

../unittests/IR/PassBuilderCallbacksTest.cpp:894:76: error: no matching function for call to ‘Invoke(void(llvm::Loop&, llvm::LoopAnalysisManager&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&))’

       .WillOnce(DoAll(WithArgs<0, 1, 2, 3>(Invoke(PassHandle.invalidateLoop)),

                                                                            ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note: candidate: template<class Class, class MethodPtr> testing::internal::InvokeMethodAction<Class, MethodPtr> testing::Invoke(Class*, MethodPtr)

 internal::InvokeMethodAction<Class, MethodPtr> Invoke(Class* obj_ptr,

                                                ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note:   template argument deduction/substitution failed:

../unittests/IR/PassBuilderCallbacksTest.cpp:894:76: note:   candidate expects 2 arguments, 1 provided

       .WillOnce(DoAll(WithArgs<0, 1, 2, 3>(Invoke(PassHandle.invalidateLoop)),

                                                                            ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note: candidate: typename std::decay<_Tp>::type testing::Invoke(FunctionImpl&&) [with FunctionImpl = void(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&); typename std::decay<_Tp>::type = void (*)(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)]

 typename std::decay<FunctionImpl>::type Invoke(FunctionImpl&& function_impl) {

                                         ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note:   no known conversion for argument 1 from ‘void(llvm::Loop&, llvm::LoopAnalysisManager&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) {aka void(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)}’ to ‘void (&&)(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)’

../unittests/IR/PassBuilderCallbacksTest.cpp: In member function ‘virtual void {anonymous}::LoopCallbacksTest_InstrumentedInvalidatingLoopNestPasses_Test::TestBody()’:

../unittests/IR/PassBuilderCallbacksTest.cpp:944:64: error: no matching function for call to ‘Invoke(void(llvm::LoopNest&, llvm::LoopAnalysisManager&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&))’

       .WillOnce(DoAll(Invoke(ExtraPassHandle.invalidateLoopNest),

                                                                ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note: candidate: template<class Class, class MethodPtr> testing::internal::InvokeMethodAction<Class, MethodPtr> testing::Invoke(Class*, MethodPtr)

 internal::InvokeMethodAction<Class, MethodPtr> Invoke(Class* obj_ptr,

                                                ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note:   template argument deduction/substitution failed:

../unittests/IR/PassBuilderCallbacksTest.cpp:944:64: note:   candidate expects 2 arguments, 1 provided

       .WillOnce(DoAll(Invoke(ExtraPassHandle.invalidateLoopNest),

                                                                ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note: candidate: typename std::decay<_Tp>::type testing::Invoke(FunctionImpl&&) [with FunctionImpl = void(llvm::LoopNest&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&); typename std::decay<_Tp>::type = void (*)(llvm::LoopNest&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)]

 typename std::decay<FunctionImpl>::type Invoke(FunctionImpl&& function_impl) {

                                         ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note:   no known conversion for argument 1 from ‘void(llvm::LoopNest&, llvm::LoopAnalysisManager&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) {aka void(llvm::LoopNest&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)}’ to ‘void (&&)(llvm::LoopNest&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&)’

../unittests/IR/PassBuilderCallbacksTest.cpp: In member function ‘virtual void {anonymous}::CGSCCCallbacksTest_InstrumentedInvalidatingPasses_Test::TestBody()’:

../unittests/IR/PassBuilderCallbacksTest.cpp:1142:75: error: no matching function for call to ‘Invoke(void(llvm::LazyCallGraph::SCC&, llvm::CGSCCAnalysisManager&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&))’

       .WillOnce(DoAll(WithArgs<0, 1, 2, 3>(Invoke(PassHandle.invalidateSCC)),

                                                                           ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note: candidate: template<class Class, class MethodPtr> testing::internal::InvokeMethodAction<Class, MethodPtr> testing::Invoke(Class*, MethodPtr)

 internal::InvokeMethodAction<Class, MethodPtr> Invoke(Class* obj_ptr,

                                                ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1101:48: note:   template argument deduction/substitution failed:

../unittests/IR/PassBuilderCallbacksTest.cpp:1142:75: note:   candidate expects 2 arguments, 1 provided

       .WillOnce(DoAll(WithArgs<0, 1, 2, 3>(Invoke(PassHandle.invalidateSCC)),

                                                                           ^

In file included from ../utils/unittest/googlemock/include/gmock/gmock.h:59:0,

                 from ../include/llvm/Testing/Support/Error.h:16,

                 from ../unittests/IR/PassBuilderCallbacksTest.cpp:9:

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note: candidate: typename std::decay<_Tp>::type testing::Invoke(FunctionImpl&&) [with FunctionImpl = void(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&); typename std::decay<_Tp>::type = void (*)(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&)]

 typename std::decay<FunctionImpl>::type Invoke(FunctionImpl&& function_impl) {

                                         ^~~~~~

../utils/unittest/googlemock/include/gmock/gmock-actions.h:1094:41: note:   no known conversion for argument 1 from ‘void(llvm::LazyCallGraph::SCC&, llvm::CGSCCAnalysisManager&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) {aka void(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&)}’ to ‘void (&&)(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&)’

ninja: build stopped: subcommand failed.