Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
I encountered this bug when testing a non-conda-toolchain build on Ubuntu Trusty
[ 56%] Building CXX object src/gandiva/CMakeFiles/lru_cache_test.dir/lru_cache_test.cc.o /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc: In member function ‘virtual void gandiva::TestLruCache_TestLruBehavior_Test::TestBody()’: /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:188: error: ‘class boost::optional<std::basic_string<char> >’ has no member named ‘value’ ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello"); ^ /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:203: error: template argument 1 is invalid ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello"); ^ /home/wesm/code/arrow/cpp/src/gandiva/lru_cache_test.cc:62:294: error: ‘class boost::optional<std::basic_string<char> >’ has no member named ‘value’ ASSERT_EQ(cache_.get(TestCacheKey(1)).value(), "hello"); ^ make[2]: *** [src/gandiva/CMakeFiles/lru_cache_test.dir/lru_cache_test.cc.o] Error 1 make[1]: *** [src/gandiva/CMakeFiles/lru_cache_test.dir/all] Error 2 make: *** [all] Error 2
Abseil has a std::optional backport, so we could switch from using boost::optional if/when we start using Abseil https://github.com/abseil/abseil-cpp/blob/master/absl/types/optional.h