You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Antoine Pitrou (Jira)" <ji...@apache.org> on 2021/01/13 17:07:00 UTC
[jira] [Resolved] (ARROW-11237) [C++] Compiler error with GLog and
unity build enabled
[ https://issues.apache.org/jira/browse/ARROW-11237?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Antoine Pitrou resolved ARROW-11237.
------------------------------------
Resolution: Fixed
Issue resolved by pull request 9190
[https://github.com/apache/arrow/pull/9190]
> [C++] Compiler error with GLog and unity build enabled
> ------------------------------------------------------
>
> Key: ARROW-11237
> URL: https://issues.apache.org/jira/browse/ARROW-11237
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Reporter: Antoine Pitrou
> Assignee: Antoine Pitrou
> Priority: Major
> Labels: pull-request-available
> Fix For: 3.0.0
>
> Time Spent: 40m
> Remaining Estimate: 0h
>
> {code}
> In file included from src/arrow/CMakeFiles/arrow_objlib.dir/Unity/unity_8_cxx.cxx:7:
> In file included from /home/antoine/arrow/dev/cpp/src/arrow/util/logging.cc:29:
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:640:9: error: use of overloaded operator '<<' is ambiguous (with operand types 'std::ostream' (aka 'basic_ostream<char>') and 'const nullptr_t')
> (*os) << v;
> ~~~~~ ^ ~
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:696:3: note: in instantiation of function template specialization 'google::MakeCheckOpValueString<nullptr_t>' requested here
> MakeCheckOpValueString(comb.ForVar2(), v2);
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:720:1: note: in instantiation of function template specialization 'google::MakeCheckOpString<std::unordered_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > > *, nullptr_t>' requested here
> DEFINE_CHECK_OP_IMPL(Check_NE, !=) // Use CHECK(x == NULL) instead.
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:709:17: note: expanded from macro 'DEFINE_CHECK_OP_IMPL'
> else return MakeCheckOpString(v1, v2, exprtext); \
> ^
> /home/antoine/arrow/dev/cpp/src/arrow/util/key_value_metadata.cc:75:3: note: in instantiation of function template specialization 'google::Check_NEImpl<std::unordered_map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > > *, nullptr_t>' requested here
> DCHECK_NE(out, nullptr);
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:996:31: note: expanded from macro 'DCHECK_NE'
> #define DCHECK_NE(val1, val2) CHECK_NE(val1, val2)
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:791:30: note: expanded from macro 'CHECK_NE'
> #define CHECK_NE(val1, val2) CHECK_OP(_NE, !=, val1, val2)
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:766:3: note: expanded from macro 'CHECK_OP'
> CHECK_OP_LOG(name, op, val1, val2, google::LogMessageFatal)
> ^
> glog_ep-prefix/src/glog_ep/include/glog/logging.h:746:18: note: expanded from macro 'CHECK_OP_LOG'
> google::Check##name##Impl( \
> ^
> <scratch space>:101:1: note: expanded from here
> Check_NEImpl
> ^
> /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ostream:108:7: note: candidate function
> operator<<(__ostream_type& (*__pf)(__ostream_type&))
> ^
> /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ostream:117:7: note: candidate function
> operator<<(__ios_type& (*__pf)(__ios_type&))
> ^
> /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ostream:127:7: note: candidate function
> operator<<(ios_base& (*__pf) (ios_base&))
> ^
> /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ostream:245:7: note: candidate function
> operator<<(const void* __p)
> ^
> /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/ostream:276:7: note: candidate function
> operator<<(__streambuf_type* __sb);
> ^
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)