[MacPorts] #55098: libcdr-0.1 @0.1.4_0 does not build on 10.5.8 PPC
MacPorts
noreply at macports.org
Sun Oct 15 10:29:16 UTC 2017
#55098: libcdr-0.1 @0.1.4_0 does not build on 10.5.8 PPC
-------------------------+------------------------
Reporter: udbraumann | Owner:
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: leopard PPC | Port: libcdr-0.1
-------------------------+------------------------
While trying to upgrade `libcdr-0.1`from `0.1.3_1` to `0.1.4_0` I noticed
that (a) neither one of the preferred compilers (`gcc-4.2`, `apple-
gcc-4.2`, `gcc-4.0`, `macports-clang-3.4`, `macports-clang-3.3`) will do
(due to missing C11 standard or because of missing basic functionality
under PPC), and (b) none of the `macports-gcc-*` (have tried all from 4.8
to 7) work due to some unaccepted syntax inside
`/opt/local/include/boost/fusion/view/transform_view/detail/value_of_impl.hpp`.
I issued
{{{
$sudo port upgrade libcdr-0.1 configure.compiler=macports-gcc-4.8
}}}
and have received dozens of these complaints:
{{{
...
:info:build from CDRParser.cpp:22:
:info:build
/opt/local/include/boost/fusion/view/transform_view/detail/value_of_impl.hpp:
In instantiation of 'struct
boost::fusion::extension::value_of_impl<boost::fusion::transform_view_iterator_tag>::apply<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >':
:info:build /opt/local/include/boost/fusion/iterator/value_of.hpp:51:16:
required from 'struct
boost::fusion::result_of::value_of<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >'
:info:build /opt/local/include/boost/mpl/aux_/has_type.hpp:20:1:
required by substitution of 'template<class U> static char (&
boost::mpl::aux::has_type<T, fallback_>::gcc_3_2_wknd::test(const volatile
boost::mpl::aux::type_wrapper<U>*, boost::mpl::aux::type_wrapper<typename
U::type>*))[2] [with U = U; T =
boost::fusion::result_of::value_of<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >; fallback_ =
mpl_::bool_<true>] [with U =
boost::fusion::result_of::value_of<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >]'
:info:build /opt/local/include/boost/mpl/aux_/has_type.hpp:20:1:
required from 'const bool
boost::mpl::aux::has_type<boost::fusion::result_of::value_of<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >, mpl_::bool_<true>
>::value'
:info:build /opt/local/include/boost/mpl/aux_/has_type.hpp:20:1:
required from 'struct
boost::mpl::aux::has_type<boost::fusion::result_of::value_of<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >, mpl_::bool_<true> >'
:info:build
/opt/local/include/boost/mpl/aux_/preprocessed/gcc/quote.hpp:32:36:
required from 'struct
boost::mpl::quote1<boost::fusion::result_of::value_of>::apply<boost::fusion::transform_view_iterator<boost::fusion::cons_iterator<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute> >'
:info:build
/opt/local/include/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp:36:8:
[ skipping 31 instantiation contexts, use -ftemplate-backtrace-limit=0 to
disable ]
:info:build
/opt/local/include/boost/spirit/home/qi/operator/sequence_base.hpp:54:13:
required from 'struct
boost::spirit::qi::sequence_base<boost::spirit::qi::sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >,
boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >
>::attribute<const boost::spirit::unused_type,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > > >'
:info:build
/opt/local/include/boost/spirit/home/qi/operator/sequence_base.hpp:78:66:
required from 'bool boost::spirit::qi::sequence_base<Derived,
Elements>::parse_impl(Iterator&, const Iterator&, Context&, const
Skipper&, Attribute&, mpl_::false_) const [with Iterator =
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >; Context = const boost::spirit::unused_type;
Skipper = boost::spirit::unused_type; Attribute =
boost::fusion::vector<short unsigned int&, std::basic_string<char>&,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_>; Derived =
boost::spirit::qi::sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >;
Elements =
boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >;
mpl_::false_ = mpl_::bool_<false>]'
:info:build
/opt/local/include/boost/spirit/home/qi/operator/sequence_base.hpp:124:50:
required from 'bool boost::spirit::qi::sequence_base<Derived,
Elements>::parse(Iterator&, const Iterator&, Context&, const Skipper&,
Attribute&) const [with Iterator =
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >; Context = const boost::spirit::unused_type;
Skipper = boost::spirit::unused_type; Attribute =
boost::fusion::vector<short unsigned int&, std::basic_string<char>&,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_>; Derived =
boost::spirit::qi::sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> > >;
Elements =
boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >]'
:info:build /opt/local/include/boost/spirit/home/qi/parse_attr.hpp:66:82:
required from 'bool boost::spirit::qi::parse(Iterator&, Iterator, const
Expr&, A0&, A1&) [with Iterator =
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >; Expr =
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::symbols<char, short
unsigned int>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::unary_plus,
boost::proto::argsns_::list1<const
boost::spirit::terminal<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> >&>, 1l>&>, 2l>; A0 = short
unsigned int; A1 = std::basic_string<char>]'
:info:build /opt/local/include/boost/spirit/home/qi/parse_attr.hpp:79:74:
required from 'bool boost::spirit::qi::parse(const Iterator&, Iterator,
const Expr&, A0&, A1&) [with Iterator =
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >; Expr =
boost::proto::exprns_::expr<boost::proto::tagns_::tag::shift_right,
boost::proto::argsns_::list2<boost::spirit::qi::symbols<char, short
unsigned int>&, const
boost::proto::exprns_::expr<boost::proto::tagns_::tag::unary_plus,
boost::proto::argsns_::list1<const
boost::spirit::terminal<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> >&>, 1l>&>, 2l>; A0 = short
unsigned int; A1 = std::basic_string<char>]'
:info:build CDRParser.cpp:93:89: required from here
:info:build
/opt/local/include/boost/fusion/view/transform_view/detail/value_of_impl.hpp:37:79:
error: no type named 'type' in 'struct
boost::mpl::apply<boost::fusion::detail::apply_transform_result<boost::spirit::traits::build_attribute_sequence<boost::fusion::cons<boost::spirit::qi::reference<boost::spirit::qi::symbols<char,
short unsigned int> >,
boost::fusion::cons<boost::spirit::qi::plus<boost::spirit::qi::char_class<boost::spirit::tag::char_code<boost::spirit::tag::char_,
boost::spirit::char_encoding::standard> > >, boost::fusion::nil_> >, const
boost::spirit::unused_type,
boost::spirit::traits::sequence_attribute_transform,
std::reverse_iterator<__gnu_cxx::__normal_iterator<char*,
std::basic_string<char> > >,
boost::spirit::qi::domain>::element_attribute>,
boost::spirit::qi::reference<boost::spirit::qi::symbols<char, short
unsigned int> >, mpl_::na, mpl_::na, mpl_::na, mpl_::na>'
:info:build typedef typename mpl::apply<transform_type,
value_type>::type type;
:info:build
...
}}}
I guess, `macports-clang-3.3` or above (or clang from XCode) will accept
this. Is there a switch for `macports-gcc-*` make this syntax being
accepted?
--
Ticket URL: <https://trac.macports.org/ticket/55098>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list