|
Boost Users : |
Subject: Re: [Boost-users] [Proto] Reducing domain check in operator
From: Eric Niebler (eric_at_[hidden])
Date: 2009-02-27 13:40:51
Joel Falcou wrote:
> Eric Niebler a écrit :
>> joel falcou wrote:
>>> OK.
>>>
>>> Last question. I changed my make_expr to use domain_of and it worked
>>> nice for the base case.
>>
>> I'm confused. You *were* using domain_of and I told you not to. ???
> No, I wasn't and you did ;)
Still confused.
<snip>
> Here is a small test case :
>
> http://codepad.org/x1U86VS9
Hey, that codepad thing is pretty cool. OK, I see the following in your
simd_context class:
template<class This,class X>
struct result<This(bp::tag::terminal,X)>
{
// NOTE! I added the following assertion:
BOOST_MPL_ASSERT_NOT((boost::is_reference<X>));
typedef typename SimdDesc::type type;
};
template<class This,class X>
struct result<This(bp::tag::terminal,simd_value<X>)>
{
typedef typename X::type type;
};
The MPL assertion I added fired, and the type of X was "const
simd_value<simd_info<int,4>> &". You probably mean for terminals of that
type to be handled by the following specialization, but its not because
of the cv qualifier and the reference.
-- Eric Niebler BoostPro Computing http://www.boostpro.com
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