Boolector/boolector

Tests fail to compile: error: no member named 'make_unique' in namespace 'std', etc.

yurivict opened this issue · 1 comments

In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:64:
In file included from /usr/local/include/gtest/gtest-assertion-result.h:46:
In file included from /usr/local/include/gtest/gtest-message.h:57:
/usr/local/include/gtest/internal/gtest-port.h:279:2: error: C++ versions less than C++14 are not supported.
#error C++ versions less than C++14 are not supported.
 ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:64:
/usr/local/include/gtest/gtest-assertion-result.h:207:48: error: no member named 'make_unique' in namespace 'std'
    if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
                                        ~~~~~~~^
/usr/local/include/gtest/gtest-assertion-result.h:207:73: error: expected '(' for function-style cast or type construction
    if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
                                                           ~~~~~~~~~~~~~^
/usr/local/include/gtest/gtest-assertion-result.h:207:75: error: expected expression
    if (message_ == nullptr) message_ = ::std::make_unique<::std::string>();
                                                                          ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
In file included from /usr/local/include/gtest/gtest-matchers.h:49:
In file included from /usr/local/include/gtest/gtest-printers.h:122:
/usr/local/include/gtest/internal/gtest-internal.h:622:54: error: too few template arguments for class template 'less'
  typedef ::std::map<std::string, CodeLocation, std::less<>> RegisteredTestsMap;
                                                     ^
/usr/include/c++/v1/__functional/operations.h:378:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS less
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
In file included from /usr/local/include/gtest/gtest-matchers.h:49:
In file included from /usr/local/include/gtest/gtest-printers.h:122:
/usr/local/include/gtest/internal/gtest-internal.h:599:22: error: member reference base type 'RegisteredTestsMap' (aka 'int') is not a structure or union
    registered_tests_.insert(
    ~~~~~~~~~~~~~~~~~^~~~~~~
/usr/local/include/gtest/internal/gtest-internal.h:605:29: error: member reference base type 'const RegisteredTestsMap' (aka 'const int') is not a structure or union
    return registered_tests_.count(test_name) > 0;
           ~~~~~~~~~~~~~~~~~^~~~~~
/usr/local/include/gtest/internal/gtest-internal.h:609:5: error: 'testing::internal::TypedTestSuitePState::RegisteredTestsMap' (aka 'int') is not a class, namespace, or enumeration
    RegisteredTestsMap::const_iterator it = registered_tests_.find(test_name);
    ^
/usr/local/include/gtest/internal/gtest-internal.h:609:62: error: member reference base type 'const RegisteredTestsMap' (aka 'const int') is not a structure or union
    RegisteredTestsMap::const_iterator it = registered_tests_.find(test_name);
                                            ~~~~~~~~~~~~~~~~~^~~~~
/usr/local/include/gtest/internal/gtest-internal.h:610:41: error: member reference base type 'const RegisteredTestsMap' (aka 'const int') is not a structure or union
    GTEST_CHECK_(it != registered_tests_.end());
                       ~~~~~~~~~~~~~~~~~^~~~
/usr/local/include/gtest/internal/gtest-port.h:1080:35: note: expanded from macro 'GTEST_CHECK_'
  if (::testing::internal::IsTrue(condition)) \
                                  ^~~~~~~~~
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:725:67: error: too few template arguments for class template 'equal_to'
class EqMatcher : public ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>> {
                                                                  ^
/usr/include/c++/v1/__functional/operations.h:320:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS equal_to
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:728:50: error: too few template arguments for class template 'equal_to'
      : ComparisonBase<EqMatcher<Rhs>, Rhs, std::equal_to<>>(rhs) {}
                                                 ^
/usr/include/c++/v1/__functional/operations.h:320:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS equal_to
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:734:55: error: too few template arguments for class template 'not_equal_to'
    : public ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>> {
                                                      ^
/usr/include/c++/v1/__functional/operations.h:349:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS not_equal_to
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:737:50: error: too few template arguments for class template 'not_equal_to'
      : ComparisonBase<NeMatcher<Rhs>, Rhs, std::not_equal_to<>>(rhs) {}
                                                 ^
/usr/include/c++/v1/__functional/operations.h:349:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS not_equal_to
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:742:67: error: too few template arguments for class template 'less'
class LtMatcher : public ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>> {
                                                                  ^
/usr/include/c++/v1/__functional/operations.h:378:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS less
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:745:50: error: too few template arguments for class template 'less'
      : ComparisonBase<LtMatcher<Rhs>, Rhs, std::less<>>(rhs) {}
                                                 ^
/usr/include/c++/v1/__functional/operations.h:378:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS less
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:750:67: error: too few template arguments for class template 'greater'
class GtMatcher : public ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>> {
                                                                  ^
/usr/include/c++/v1/__functional/operations.h:465:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS greater
                            ^
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test_aigvec.cpp:9:
In file included from /usr/ports/math/boolector/work/boolector-3.2.3/test/test.h:15:
In file included from /usr/local/include/gtest/gtest.h:65:
In file included from /usr/local/include/gtest/gtest-death-test.h:43:
In file included from /usr/local/include/gtest/internal/gtest-death-test-internal.h:47:
/usr/local/include/gtest/gtest-matchers.h:753:50: error: too few template arguments for class template 'greater'
      : ComparisonBase<GtMatcher<Rhs>, Rhs, std::greater<>>(rhs) {}
                                                 ^
/usr/include/c++/v1/__functional/operations.h:465:29: note: template is declared here
struct _LIBCPP_TEMPLATE_VIS greater
                            ^

Version: 3.2.3
clang-16
googletest-1.14.0
FreeBSD 13.2

Fixed with #217