CJCombrink commented on PR #3165: URL: https://github.com/apache/thrift/pull/3165#issuecomment-2967897694
@kou Thanks for the work but do you have any idea what goes wrong here: https://github.com/CJCombrink/thrift/actions/runs/15618763795/job/43998286079 ``` libtool: compile: g++ -std=c++11 -DHAVE_CONFIG_H -I/usr/include -I../../../lib/cpp/src -I../../../lib/cpp/src/thrift -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I. -Wall -Wextra -pedantic -g -O2 -c gen-cpp/DebugProtoTest_types.cpp -fPIC -DPIC -o gen-cpp/.libs/DebugProtoTest_types.o In file included from /usr/include/c++/13/map:63, from ../../../lib/cpp/src/thrift/Thrift.h:38, from gen-cpp/AnnotationTest_types.h:12, from gen-cpp/AnnotationTest_types.cpp:7: /usr/include/c++/13/bits/stl_map.h: In instantiation of 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]': gen-cpp/AnnotationTest_types.cpp:34:184: required from here /usr/include/c++/13/bits/stl_map.h:287:38: error: no matching function for call to 'std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(apache::thrift::TEnumIterator&, apache::thrift::TEnumIterator&)' 287 | { _M_t._M_insert_range_unique(__first, __last); } | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/13/map:62: /usr/include/c++/13/bits/stl_tree.h:1100:9: note: candidate: 'template<class _InputIterator> std::__enable_if_t<std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_range_unique(_InputIterator, _InputIterator) [with _Key = int; _Val = std::pair<const int, const char*>; _KeyOfValue = std::_Select1st<std::pair<const int, const char*> >; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' 1100 | _M_insert_range_unique(_InputIterator __first, _InputIterator __last) | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_tree.h:1100:9: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/stl_tree.h: In substitution of 'template<class _InputIterator> std::__enable_if_t<std::is_same<std::pair<const int, const char*>, typename std::iterator_traits< <template-parameter-1-1> >::value_type>::value, void> std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator]': /usr/include/c++/13/bits/stl_map.h:287:31: required from 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' gen-cpp/AnnotationTest_types.cpp:34:184: required from here /usr/include/c++/13/bits/stl_tree.h:1100:9: error: no type named 'value_type' in 'struct std::iterator_traits<apache::thrift::TEnumIterator>' /usr/include/c++/13/bits/stl_map.h: In instantiation of 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]': gen-cpp/AnnotationTest_types.cpp:34:184: required from here /usr/include/c++/13/bits/stl_tree.h:1109:9: note: candidate: 'template<class _InputIterator> std::__enable_if_t<(! std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value)> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_range_unique(_InputIterator, _InputIterator) [with _Key = int; _Val = std::pair<const int, const char*>; _KeyOfValue = std::_Select1st<std::pair<const int, const char*> >; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' 1109 | _M_insert_range_unique(_InputIterator __first, _InputIterator __last) | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_tree.h:1109:9: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/stl_tree.h: In substitution of 'template<class _InputIterator> std::__enable_if_t<(! std::is_same<std::pair<const int, const char*>, typename std::iterator_traits< <template-parameter-1-1> >::value_type>::value), void> std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator]': /usr/include/c++/13/bits/stl_map.h:287:31: required from 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' gen-cpp/AnnotationTest_types.cpp:34:184: required from here /usr/include/c++/13/bits/stl_tree.h:1108:59: error: no type named 'value_type' in 'struct std::iterator_traits<apache::thrift::TEnumIterator>' 1108 | __enable_if_t<!__same_value_type<_InputIterator>::value> | ^~~~~ make[2]: *** [Makefile:1496: gen-cpp/AnnotationTest_types.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from /usr/include/c++/13/map:63, from ../../../lib/cpp/src/thrift/Thrift.h:38, from gen-cpp/DebugProtoTest_types.h:12, from gen-cpp/DebugProtoTest_types.cpp:7: /usr/include/c++/13/bits/stl_map.h: In instantiation of 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]': gen-cpp/DebugProtoTest_types.cpp:24:184: required from here /usr/include/c++/13/bits/stl_map.h:287:38: error: no matching function for call to 'std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(apache::thrift::TEnumIterator&, apache::thrift::TEnumIterator&)' 287 | { _M_t._M_insert_range_unique(__first, __last); } | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ In file included from /usr/include/c++/13/map:62: /usr/include/c++/13/bits/stl_tree.h:1100:9: note: candidate: 'template<class _InputIterator> std::__enable_if_t<std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_range_unique(_InputIterator, _InputIterator) [with _Key = int; _Val = std::pair<const int, const char*>; _KeyOfValue = std::_Select1st<std::pair<const int, const char*> >; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' 1100 | _M_insert_range_unique(_InputIterator __first, _InputIterator __last) | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_tree.h:1100:9: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/stl_tree.h: In substitution of 'template<class _InputIterator> std::__enable_if_t<std::is_same<std::pair<const int, const char*>, typename std::iterator_traits< <template-parameter-1-1> >::value_type>::value, void> std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator]': /usr/include/c++/13/bits/stl_map.h:287:31: required from 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' gen-cpp/DebugProtoTest_types.cpp:24:184: required from here /usr/include/c++/13/bits/stl_tree.h:1100:9: error: no type named 'value_type' in 'struct std::iterator_traits<apache::thrift::TEnumIterator>' /usr/include/c++/13/bits/stl_map.h: In instantiation of 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]': gen-cpp/DebugProtoTest_types.cpp:24:184: required from here /usr/include/c++/13/bits/stl_tree.h:1109:9: note: candidate: 'template<class _InputIterator> std::__enable_if_t<(! std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value)> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_range_unique(_InputIterator, _InputIterator) [with _Key = int; _Val = std::pair<const int, const char*>; _KeyOfValue = std::_Select1st<std::pair<const int, const char*> >; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' 1109 | _M_insert_range_unique(_InputIterator __first, _InputIterator __last) | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/13/bits/stl_tree.h:1109:9: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/stl_tree.h: In substitution of 'template<class _InputIterator> std::__enable_if_t<(! std::is_same<std::pair<const int, const char*>, typename std::iterator_traits< <template-parameter-1-1> >::value_type>::value), void> std::_Rb_tree<int, std::pair<const int, const char*>, std::_Select1st<std::pair<const int, const char*> >, std::less<int>, std::allocator<std::pair<const int, const char*> > >::_M_insert_range_unique(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator]': /usr/include/c++/13/bits/stl_map.h:287:31: required from 'std::map<_Key, _Tp, _Compare, _Alloc>::map(_InputIterator, _InputIterator) [with _InputIterator = apache::thrift::TEnumIterator; _Key = int; _Tp = const char*; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, const char*> >]' gen-cpp/DebugProtoTest_types.cpp:24:184: required from here /usr/include/c++/13/bits/stl_tree.h:1108:59: error: no type named 'value_type' in 'struct std::iterator_traits<apache::thrift::TEnumIterator>' 1108 | __enable_if_t<!__same_value_type<_InputIterator>::value> | ^~~~~ make[2]: *** [Makefile:1496: gen-cpp/DebugProtoTest_types.lo] Error 1 ``` Looks related -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: notifications-unsubscr...@thrift.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org