Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

5.6: build fails on building with system gtest 1.14.0 with #error C++ versions less than C++14 are not supported #1018

Closed
kloczek opened this issue Oct 23, 2023 · 1 comment

Comments

@kloczek
Copy link

kloczek commented Oct 23, 2023

gcc 13.2.1.
cmake -L full output:

-- Cache values
ALLOCATOR:STRING=jemalloc
BTRFSUTIL_LIB:FILEPATH=BTRFSUTIL_LIB-NOTFOUND
CAPS:FILEPATH=/usr/lib64/libcap.so
CEPHFS_LIBRARY:FILEPATH=/usr/lib64/libcephfs.so
CEPHFS_POSIX_ACL:STRING=DEFAULT_ON
CMAKE_BUILD_TYPE:STRING=RelWithDebInfo
CMAKE_INSTALL_PREFIX:PATH=/usr
COVERAGE:BOOL=OFF
DEBUG_MDCACHE:BOOL=OFF
DEBUG_SAL:BOOL=OFF
DEBUG_SYMS:BOOL=OFF
DISTNAME_HAS_GIT_DATA:BOOL=OFF
ENABLE_ERROR_INJECTION:BOOL=OFF
ENABLE_LOCKTRACE:BOOL=OFF
ENABLE_RFC_ACL:BOOL=OFF
ENABLE_VFS_DEBUG_ACL:BOOL=OFF
ENABLE_VFS_POSIX_ACL:BOOL=OFF
ENFORCE_GCC:BOOL=OFF
GLUSTER_PREFIX:PATH=/usr
GSH_CAN_HOST_LOCAL_FS:BOOL=ON
GTEST:FILEPATH=/usr/lib64/libgtest.so
GTEST_MAIN:FILEPATH=/usr/lib64/libgtest_main.so
KRB5_C_CONFIG:FILEPATH=/usr/bin/krb5-config
KVSNS_LIB:FILEPATH=KVSNS_LIB-NOTFOUND
LEX_PROGRAM:FILEPATH=/usr/bin/lttng
LIBACL_LIBRARY:FILEPATH=/usr/lib64/libacl.so
LIBBLKID:FILEPATH=/usr/lib64/libblkid.so
LIBURCU_INC:PATH=/usr/include
LIBURCU_LIB:FILEPATH=/usr/lib64/liburcu-bp.so
LIBUUID:FILEPATH=/usr/lib64/libuuid.so
LIB_INSTALL_DIR:PATH=/usr/lib64
LIZARDFS_CLIENT_LIB:FILEPATH=LIZARDFS_CLIENT_LIB-NOTFOUND
LTTNG_CTL_INCLUDE_DIR:PATH=/usr/include
LTTNG_CTL_LIBRARY:FILEPATH=/usr/lib64/liblttng-ctl.so
LTTNG_CTL_LIBRARY_DIR:PATH=/usr/lib64
LTTNG_EXECUTABLE:FILEPATH=/bin/lttng
LTTNG_UST_LIBRARY:FILEPATH=/usr/lib64/liblttng-ust.so
NFSIDMAP_INCLUDE_DIR:PATH=/usr/include
NFSIDMAP_LIBRARY:FILEPATH=/usr/lib64/libnfsidmap.so
NTIRPC_LIBRARY_DIR:PATH=/usr/lib64
NTIRPC_LTTNG:FILEPATH=NTIRPC_LTTNG-NOTFOUND
NTIRPC_TRACEPOINTS:FILEPATH=NTIRPC_TRACEPOINTS-NOTFOUND
PROXYV4_HANDLE_MAPPING:STRING=DEFAULT_OFF
RADOS_LIBRARY:FILEPATH=/usr/lib64/librados.so
RADOS_URLS:STRING=ON
RPCBIND:BOOL=ON
RUNTIMEDIR:PATH=/var/run/ganesha
SANITIZE_ADDRESS:BOOL=OFF
SANITIZE_LINK_STATIC:BOOL=OFF
SANITIZE_MEMORY:BOOL=OFF
SANITIZE_THREAD:BOOL=OFF
SANITIZE_UNDEFINED:BOOL=OFF
SPHINX_BUILD:FILEPATH=/usr/bin/sphinx-build
SYSCONFDIR:PATH=/etc
SYSSTATEDIR:PATH=/var
TIRPC_EPOLL:BOOL=ON
USE_9P:BOOL=OFF
USE_9P_RDMA:BOOL=OFF
USE_ACL_MAPPING:BOOL=ON
USE_ADMIN_TOOLS:STRING=ON
USE_CAPS:STRING=DEFAULT_ON
USE_CB_SIMULATOR:BOOL=OFF
USE_CUNIT:STRING=ON
USE_DBUS:STRING=ON
USE_EFENCE:STRING=DEFAULT_OFF
USE_FSAL_CEPH:STRING=ON
USE_FSAL_GLUSTER:STRING=ON
USE_FSAL_GPFS:STRING=ON
USE_FSAL_KVSFS:STRING=DEFAULT_ON
USE_FSAL_LIZARDFS:STRING=DEFAULT_ON
USE_FSAL_LUSTRE:STRING=OFF
USE_FSAL_MEM:STRING=ON
USE_FSAL_NULL:STRING=ON
USE_FSAL_PROXY_V3:STRING=DEFAULT_ON
USE_FSAL_PROXY_V4:STRING=DEFAULT_ON
USE_FSAL_RGW:STRING=OFF
USE_FSAL_VFS:STRING=ON
USE_FSAL_XFS:STRING=ON
USE_GSS:BOOL=ON
USE_GTEST:STRING=ON
USE_GUI_ADMIN_TOOLS:STRING=OFF
USE_LTTNG:STRING=OFF
USE_MAN_PAGE:STRING=ON
USE_MONITORING:STRING=ON
USE_NFS3:BOOL=ON
USE_NFSACL3:STRING=ON
USE_NFSIDMAP:STRING=DEFAULT_ON
USE_NFS_RDMA:BOOL=OFF
USE_NLM:BOOL=ON
USE_RADOS_RECOV:STRING=ON
USE_RQUOTA:BOOL=ON
USE_SYSTEM_NTIRPC:BOOL=ON
USE_TOOL_MULTILOCK:BOOL=OFF
USE_VSOCK:BOOL=OFF
UUID_LIBRARY:FILEPATH=/usr/lib64/libuuid.so
WBCLIENT_INCLUDE_DIR:PATH=/usr/include/samba-4.0
WBCLIENT_LIBRARIES:FILEPATH=/usr/lib64/libwbclient.so
_MSPAC_SUPPORT:STRING=ON
_NO_TCP_REGISTER:BOOL=OFF
_USE_9P:BOOL=OFF
_USE_9P_RDMA:BOOL=OFF
_USE_NFS_RDMA:BOOL=OFF
_VALGRIND_MEMCHECK:BOOL=OFF
civetweb_DIR:PATH=/usr/lib64/cmake/civetweb
prometheus-cpp_DIR:PATH=/usr/lib64/cmake/prometheus-cpp

and everything fails with

[ 79%] Building CXX object gtest/CMakeFiles/test_ci_hash_dist1.dir/test_ci_hash_dist1.cc.o
cd /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/x86_64-redhat-linux-gnu/gtest && /usr/bin/g++ -DHAS_DOFF -D_GNU_SOURCE=1 -I/usr/include/uuid -I/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/x86_64-redhat-linux-gnu/include -I/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include -I/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/os/linux -I/include -I/usr/include/ntirpc -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fno-strict-aliasing -std=gnu++11 -fpermissive -Wnon-virtual-dtor -Wno-invalid-offsetof -DNDEBUG -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fno-strict-aliasing -std=gnu++11 -fpermissive -Wnon-virtual-dtor -Wno-invalid-offsetof -I/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest -I/usr/include -fno-strict-aliasing -MD -MT gtest/CMakeFiles/test_ci_hash_dist1.dir/test_ci_hash_dist1.cc.o -MF CMakeFiles/test_ci_hash_dist1.dir/test_ci_hash_dist1.cc.o.d -o CMakeFiles/test_ci_hash_dist1.dir/test_ci_hash_dist1.cc.o -c /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc
In file included from /usr/include/gtest/gtest-message.h:57,
                 from /usr/include/gtest/gtest-assertion-result.h:46,
                 from /usr/include/gtest/gtest.h:64,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:33:
/usr/include/gtest/internal/gtest-port.h:279:2: error: #error C++ versions less than C++14 are not supported.
  279 | #error C++ versions less than C++14 are not supported.
      |  ^~~~~
/usr/include/gtest/gtest-assertion-result.h: In member function ‘void testing::AssertionResult::AppendMessage(const testing::Message&)’:
/usr/include/gtest/gtest-assertion-result.h:207:48: error: ‘make_unique’ is not a member of ‘std’
  207 |     if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
      |                                                ^~~~~~~~~~~
/usr/include/gtest/gtest-assertion-result.h:207:48: note: ‘std::make_unique’ is only available from C++14 onwards
/usr/include/gtest/gtest-assertion-result.h:207:73: error: expected primary-expression before ‘>’ token
  207 |     if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
      |                                                                         ^
/usr/include/gtest/gtest-assertion-result.h:207:75: error: expected primary-expression before ‘)’ token
  207 |     if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
      |                                                                           ^
In file included from /usr/include/gtest/gtest-printers.h:122,
                 from /usr/include/gtest/gtest-matchers.h:49,
                 from /usr/include/gtest/internal/gtest-death-test-internal.h:47,
                 from /usr/include/gtest/gtest-death-test.h:43,
                 from /usr/include/gtest/gtest.h:65:
/usr/include/gtest/internal/gtest-internal.h: At global scope:
/usr/include/gtest/internal/gtest-internal.h:622:58: error: wrong number of template arguments (0, should be 1)
  622 |   typedef ::std::map<std::string, CodeLocation, std::less<>> RegisteredTestsMap;
      |                                                          ^
In file included from /usr/include/c++/13/string:49,
                 from /usr/include/c++/13/bits/locale_classes.h:40,
                 from /usr/include/c++/13/bits/ios_base.h:41,
                 from /usr/include/c++/13/ios:44,
                 from /usr/include/c++/13/ostream:40,
                 from /usr/include/c++/13/iostream:41,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:27:
/usr/include/c++/13/bits/stl_function.h:403:12: note: provided for ‘template<class _Tp> struct std::less’
  403 |     struct less : public binary_function<_Tp, _Tp, bool>
      |            ^~~~
/usr/include/gtest/internal/gtest-internal.h:622:59: error: template argument 3 is invalid
  622 |   typedef ::std::map<std::string, CodeLocation, std::less<>> RegisteredTestsMap;
      |                                                           ^~
/usr/include/gtest/internal/gtest-internal.h: In member function ‘bool testing::internal::TypedTestSuitePState::AddTestName(const char*, int, const char*, const char*)’:
/usr/include/gtest/internal/gtest-internal.h:599:23: error: request for member ‘insert’ in ‘((testing::internal::TypedTestSuitePState*)this)->testing::internal::TypedTestSuitePState::registered_tests_’, which is of non-class type ‘testing::internal::TypedTestSuitePState::RegisteredTestsMap’ {aka ‘int’}
  599 |     registered_tests_.insert(
      |                       ^~~~~~
/usr/include/gtest/internal/gtest-internal.h: In member function ‘bool testing::internal::TypedTestSuitePState::TestExists(const std::string&) const’:
/usr/include/gtest/internal/gtest-internal.h:605:30: error: request for member ‘count’ in ‘((const testing::internal::TypedTestSuitePState*)this)->testing::internal::TypedTestSuitePState::registered_tests_’, which is of non-class type ‘const testing::internal::TypedTestSuitePState::RegisteredTestsMap’ {aka ‘const int’}
  605 |     return registered_tests_.count(test_name) > 0;
      |                              ^~~~~
/usr/include/gtest/internal/gtest-internal.h: In member function ‘const testing::internal::CodeLocation& testing::internal::TypedTestSuitePState::GetCodeLocation(const std::string&) const’:
/usr/include/gtest/internal/gtest-internal.h:609:40: error: qualified-id in declaration before ‘it’
  609 |     RegisteredTestsMap::const_iterator it = registered_tests_.find(test_name);
      |                                        ^~
/usr/include/gtest/internal/gtest-internal.h:610:5: error: ‘it’ was not declared in this scope; did you mean ‘int’?
  610 |     GTEST_CHECK_(it != registered_tests_.end());
      |     ^~~~~~~~~~~~
/usr/include/gtest/internal/gtest-internal.h:610:5: error: request for member ‘end’ in ‘((const testing::internal::TypedTestSuitePState*)this)->testing::internal::TypedTestSuitePState::registered_tests_’, which is of non-class type ‘const testing::internal::TypedTestSuitePState::RegisteredTestsMap’ {aka ‘const int’}
  610 |     GTEST_CHECK_(it != registered_tests_.end());
      |     ^~~~~~~~~~~~
/usr/include/gtest/internal/gtest-internal.h:611:12: error: ‘it’ was not declared in this scope; did you mean ‘int’?
  611 |     return it->second;
      |            ^~
      |            int
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:725:75: error: wrong number of template arguments (0, should be 1)
  725 | class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>> {
      |                                                                           ^
/usr/include/c++/13/bits/stl_function.h:373:12: note: provided for ‘template<class _Tp> struct std::equal_to’
  373 |     struct equal_to : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~
/usr/include/gtest/gtest-matchers.h:725:76: error: template argument 3 is invalid
  725 | class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>> {
      |                                                                            ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::EqMatcher<Rhs>::EqMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:728:58: error: wrong number of template arguments (0, should be 1)
  728 |       : ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>>(rhs) {}
      |                                                          ^
/usr/include/c++/13/bits/stl_function.h:373:12: note: provided for ‘template<class _Tp> struct std::equal_to’
  373 |     struct equal_to : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~
/usr/include/gtest/gtest-matchers.h:728:59: error: template argument 3 is invalid
  728 |       : ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>>(rhs) {}
      |                                                           ^~
/usr/include/gtest/gtest-matchers.h:728:61: error: expected ‘{’ before ‘(’ token
  728 |       : ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>>(rhs) {}
      |                                                             ^
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:734:67: error: wrong number of template arguments (0, should be 1)
  734 |     : public ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>> {
      |                                                                   ^
/usr/include/c++/13/bits/stl_function.h:383:12: note: provided for ‘template<class _Tp> struct std::not_equal_to’
  383 |     struct not_equal_to : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:734:68: error: template argument 3 is invalid
  734 |     : public ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>> {
      |                                                                    ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::NeMatcher<Rhs>::NeMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:737:62: error: wrong number of template arguments (0, should be 1)
  737 |       : ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>>(rhs) {}
      |                                                              ^
/usr/include/c++/13/bits/stl_function.h:383:12: note: provided for ‘template<class _Tp> struct std::not_equal_to’
  383 |     struct not_equal_to : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:737:63: error: template argument 3 is invalid
  737 |       : ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>>(rhs) {}
      |                                                               ^~
/usr/include/gtest/gtest-matchers.h:737:65: error: expected ‘{’ before ‘(’ token
  737 |       : ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>>(rhs) {}
      |                                                                 ^
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:742:71: error: wrong number of template arguments (0, should be 1)
  742 | class LtMatcher : public ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>> {
      |                                                                       ^
/usr/include/c++/13/bits/stl_function.h:403:12: note: provided for ‘template<class _Tp> struct std::less’
  403 |     struct less : public binary_function<_Tp, _Tp, bool>
      |            ^~~~
/usr/include/gtest/gtest-matchers.h:742:72: error: template argument 3 is invalid
  742 | class LtMatcher : public ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>> {
      |                                                                        ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::LtMatcher<Rhs>::LtMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:745:54: error: wrong number of template arguments (0, should be 1)
  745 |       : ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>>(rhs) {}
      |                                                      ^
/usr/include/c++/13/bits/stl_function.h:403:12: note: provided for ‘template<class _Tp> struct std::less’
  403 |     struct less : public binary_function<_Tp, _Tp, bool>
      |            ^~~~
/usr/include/gtest/gtest-matchers.h:745:55: error: template argument 3 is invalid
  745 |       : ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>>(rhs) {}
      |                                                       ^~
/usr/include/gtest/gtest-matchers.h:745:57: error: expected ‘{’ before ‘(’ token
  745 |       : ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>>(rhs) {}
      |                                                         ^
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:750:74: error: wrong number of template arguments (0, should be 1)
  750 | class GtMatcher : public ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>> {
      |                                                                          ^
/usr/include/c++/13/bits/stl_function.h:393:12: note: provided for ‘template<class _Tp> struct std::greater’
  393 |     struct greater : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~
/usr/include/gtest/gtest-matchers.h:750:75: error: template argument 3 is invalid
  750 | class GtMatcher : public ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>> {
      |                                                                           ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::GtMatcher<Rhs>::GtMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:753:57: error: wrong number of template arguments (0, should be 1)
  753 |       : ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>>(rhs) {}
      |                                                         ^
/usr/include/c++/13/bits/stl_function.h:393:12: note: provided for ‘template<class _Tp> struct std::greater’
  393 |     struct greater : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~
/usr/include/gtest/gtest-matchers.h:753:58: error: template argument 3 is invalid
  753 |       : ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>>(rhs) {}
      |                                                          ^~
/usr/include/gtest/gtest-matchers.h:753:60: error: expected ‘{’ before ‘(’ token
  753 |       : ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>>(rhs) {}
      |                                                            ^
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:759:65: error: wrong number of template arguments (0, should be 1)
  759 |     : public ComparisonBase<LeMatcher<Rhs>, Rhs, std::less_equal<>> {
      |                                                                 ^
/usr/include/c++/13/bits/stl_function.h:423:12: note: provided for ‘template<class _Tp> struct std::less_equal’
  423 |     struct less_equal : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:759:66: error: template argument 3 is invalid
  759 |     : public ComparisonBase<LeMatcher<Rhs>, Rhs, std::less_equal<>> {
      |                                                                  ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::LeMatcher<Rhs>::LeMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:762:60: error: wrong number of template arguments (0, should be 1)
  762 |       : ComparisonBase<LeMatcher<Rhs>, Rhs, std::less_equal<>>(rhs) {}
      |                                                            ^
/usr/include/c++/13/bits/stl_function.h:423:12: note: provided for ‘template<class _Tp> struct std::less_equal’
  423 |     struct less_equal : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:762:61: error: template argument 3 is invalid
  762 |       : ComparisonBase<LeMatcher<Rhs>, Rhs, std::less_equal<>>(rhs) {}
      |                                                             ^~
/usr/include/gtest/gtest-matchers.h:762:63: error: expected ‘{’ before ‘(’ token
  762 |       : ComparisonBase<LeMatcher<Rhs>, Rhs, std::less_equal<>>(rhs) {}
      |                                                               ^
/usr/include/gtest/gtest-matchers.h: At global scope:
/usr/include/gtest/gtest-matchers.h:768:68: error: wrong number of template arguments (0, should be 1)
  768 |     : public ComparisonBase<GeMatcher<Rhs>, Rhs, std::greater_equal<>> {
      |                                                                    ^
/usr/include/c++/13/bits/stl_function.h:413:12: note: provided for ‘template<class _Tp> struct std::greater_equal’
  413 |     struct greater_equal : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:768:69: error: template argument 3 is invalid
  768 |     : public ComparisonBase<GeMatcher<Rhs>, Rhs, std::greater_equal<>> {
      |                                                                     ^~
/usr/include/gtest/gtest-matchers.h: In constructor ‘testing::internal::GeMatcher<Rhs>::GeMatcher(const Rhs&)’:
/usr/include/gtest/gtest-matchers.h:771:63: error: wrong number of template arguments (0, should be 1)
  771 |       : ComparisonBase<GeMatcher<Rhs>, Rhs, std::greater_equal<>>(rhs) {}
      |                                                               ^
/usr/include/c++/13/bits/stl_function.h:413:12: note: provided for ‘template<class _Tp> struct std::greater_equal’
  413 |     struct greater_equal : public binary_function<_Tp, _Tp, bool>
      |            ^~~~~~~~~~~~~
/usr/include/gtest/gtest-matchers.h:771:64: error: template argument 3 is invalid
  771 |       : ComparisonBase<GeMatcher<Rhs>, Rhs, std::greater_equal<>>(rhs) {}
      |                                                                ^~
/usr/include/gtest/gtest-matchers.h:771:66: error: expected ‘{’ before ‘(’ token
  771 |       : ComparisonBase<GeMatcher<Rhs>, Rhs, std::greater_equal<>>(rhs) {}
      |                                                                  ^
/usr/include/gtest/gtest.h: At global scope:
/usr/include/gtest/gtest.h:302:30: error: ‘std::enable_if_t’ has not been declared
  302 |   template <typename T, std::enable_if_t<std::is_convertible<T, int64_t>::value,
      |                              ^~~~~~~~~~~
/usr/include/gtest/gtest.h:302:41: error: expected ‘>’ before ‘<’ token
  302 |   template <typename T, std::enable_if_t<std::is_convertible<T, int64_t>::value,
      |                                         ^
In file included from /usr/include/urcu/call-rcu.h:33,
                 from /usr/include/urcu/urcu-bp.h:197,
                 from /usr/include/urcu-bp.h:2,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/fsal_api.h:44,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/fsal.h:63,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/export_mgr.h:43,
                 from /home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:43:
/usr/include/urcu/wfcqueue.h:511:35: error: conflicting declaration of C function ‘cds_wfcq_head_ptr_t cds_wfcq_head_cast_cpp(cds_wfcq_head*)’
  511 | static inline cds_wfcq_head_ptr_t cds_wfcq_head_cast_cpp(struct cds_wfcq_head *head)
      |                                   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/urcu/wfcqueue.h:505:35: note: previous declaration ‘cds_wfcq_head_ptr_t cds_wfcq_head_cast_cpp(__cds_wfcq_head*)’
  505 | static inline cds_wfcq_head_ptr_t cds_wfcq_head_cast_cpp(struct __cds_wfcq_head *head)
      |                                   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/urcu/wfcqueue.h:517:1: error: template with C linkage
  517 | template<typename T> static inline bool cds_wfcq_empty(T head,
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:523:1: error: template with C linkage
  523 | template<typename T> static inline bool cds_wfcq_enqueue(T head,
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:530:1: error: template with C linkage
  530 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_dequeue_blocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:536:1: error: template with C linkage
  536 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_dequeue_with_state_blocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:543:1: error: template with C linkage
  543 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_dequeue_nonblocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:549:1: error: template with C linkage
  549 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_dequeue_with_state_nonblocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:556:1: error: template with C linkage
  556 | template<typename T, typename U> static inline enum cds_wfcq_ret __cds_wfcq_splice_blocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:568:1: error: template with C linkage
  568 | template<typename T, typename U> static inline enum cds_wfcq_ret __cds_wfcq_splice_nonblocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:580:1: error: template with C linkage
  580 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_first_blocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:586:1: error: template with C linkage
  586 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_first_nonblocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:592:1: error: template with C linkage
  592 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_next_blocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/usr/include/urcu/wfcqueue.h:600:1: error: template with C linkage
  600 | template<typename T> static inline struct cds_wfcq_node *__cds_wfcq_next_nonblocking(
      | ^~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/gtest/test_ci_hash_dist1.cc:38:1: note: ‘extern "C"’ linkage started here
   38 | extern "C" {
      | ^~~~~~~~~~
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/fsal_api.h: In function ‘void export_root_object_put(fsal_obj_handle*)’:
/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/include/fsal_api.h:3156:17: warning: unused variable ‘ref’ [-Wunused-variable]
 3156 |         int32_t ref = atomic_dec_int32_t (&obj_hdl->exp_refcnt);
      |                 ^~~
make[2]: *** [gtest/CMakeFiles/test_ci_hash_dist1.dir/build.make:79: gtest/CMakeFiles/test_ci_hash_dist1.dir/test_ci_hash_dist1.cc.o] Error 1
make[2]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/x86_64-redhat-linux-gnu'
make[1]: *** [CMakeFiles/Makefile2:2366: gtest/CMakeFiles/test_ci_hash_dist1.dir/all] Error 2
make[1]: Leaving directory '/home/tkloczko/rpmbuild/BUILD/nfs-ganesha-5.6/src/x86_64-redhat-linux-gnu'
make: *** [Makefile:159: all] Error 2
@kloczek
Copy link
Author

kloczek commented Nov 6, 2023

Closing as no longer see gtest related issues in 5.7.

@kloczek kloczek closed this as completed Nov 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants