Boost logo

Boost Users :

Subject: Re: [Boost-users] [proto]Compile issue on Sun Solaris 10, Sun Studio 12.2
From: Sascha Ochsenknecht (s.ochsenknecht_at_[hidden])
Date: 2010-10-06 03:03:01


Am 10/06/10 01:36, schrieb Eric Niebler:
> On 10/5/2010 9:13 AM, Sascha Ochsenknecht wrote:
>> Hello,
>>
>> I got an error from the Sun Studio 12.2 (CC 5.11) when trying to compile
>> my sources.
>> The error comes out of the Boost.Proto library (actually I'm doing
>> something with Boost.Spirit and Boost.Spirit is using Boost.Proto ...,
>> but I don't think that the problem is in the client code, it seems to
>> come from the buggy compiler). I'm using Boost 1.43.
>>
>> This is what I got from the compiler:
>>
>> "...include/boost/proto/detail/decltype.hpp", line 343: Error: Partial
>> specialization parameter V is not used in the arguments.
>
>
> Can you try replacing the definition of result_of_ in decltype.hpp with
> the following:
>

Sorry, it doesn't work. I get:

"...include/boost/proto/detail/decltype.hpp", line 348: Error: Partial
specialization parameter U is not used in the arguments.
"...include/boost/proto/detail/decltype.hpp", line 348: Error: Partial
specialization parameter V is not used in the arguments.
"...include/boost/proto/detail/decltype.hpp", line 380: Error: Too many
arguments for template boost::proto::detail::get_pointerns::result_of_.
"...include/boost/proto/detail/decltype.hpp", line 380: Error: Partial
specialization parameter V is not used in the arguments.
"...include/boost/proto/transform/arg.hpp", line 287: Error: Partial
specialization for boost::proto::_byval::result has identical arguments.
"...include/boost/proto/extends.hpp", line 600: Error: type is not a
member of boost::result_of<boost::proto::domainns_::default_domain>.
"...include/boost/spirit/home/support/terminal.hpp", line 237:
Where: While specializing
"boost::proto::exprns_::extends<boost::proto::exprns_::expr<boost::proto::tag::terminal,
boost::proto::argsns_::term<boost::spirit::tag::bin>, 0>,
boost::spirit::terminal<boost::spirit::tag::bin>,
boost::proto::domainns_::default_domain, 0>".

Line 348 is:

            template<typename T, typename U, typename V>
            struct result_of_2<sun_workaround_helper<T U::*(V)>
              , typename enable_if_c<is_member_object_pointer<T
U::*>::value>::type
>
            {

I attached my modified decltype.hpp.

Thanks in advance,
Sascha




Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net