Boost logo

Boost Users :

Subject: Re: [Boost-users] Can not compile a program that uses typeof package by gcc?
From: Peng Yu (pengyu.ut_at_[hidden])
Date: 2008-10-20 15:52:11


On Mon, Oct 20, 2008 at 2:35 PM, Peng Yu <pengyu.ut_at_[hidden]> wrote:
> On Mon, Oct 20, 2008 at 11:57 AM, Steven Watanabe <watanabesj_at_[hidden]> wrote:
>> AMDG
>>
>> Peng Yu wrote:
>>>
>>> I'm not sure if I understand you correctly. But I got the following
>>> code which still ends up with the compiler bug. Would you please give
>>> me a complete working copy of the program so that I can play with it?
>>>
>>
>> attached.
>
> Hi,
>
> In line 51-55 of you attached file, it says the following.
>
> template <typename T1, typename T2>
> Y<typename A::multiply_traits<T1, T2>::result_type>
> operator*(const Y<T1> &y, const T2 &t) {
> return Y<T1>(y.the_t() * t);
> }
>
> This way requires that I have to explicitly say 'multiply_traits' is
> from the namespace A. I wanted to use the following instead, which
> does not need to specify which the namespaces T1 and T2 are. But the
> following code still results in the compiler error.
>
> template <typename T1, typename T2>
> Y<BOOST_TYPEOF(T1() * T2())>
> operator*(const Y<T1> &y, const T2 &t) {
> return Y<T1>(y.the_t() * t);
> }
>
> My question is not resolved. I'm attaching the source file with some
> comments to avoid any confusion. Would you please take another look at
> the problem?

Here is the correct file.

Thanks,
Peng




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