Boost logo

Boost :

Subject: Re: [boost] [complex] Feedback and Potential Review Manager
From: Matthieu Schaller (matthieu.schaller_at_[hidden])
Date: 2012-05-04 18:20:03


Dear all,

The modifications you suggested led to a set of questions.
>> b- Use the boost::math::constants instead of the gcc extensions.

I implemented this but it seems to add limitations on the types usable.
They now require to have an overloaded istream extraction operator and a
specialization of std::numeric_limits.
Those two limitations are reasonable but I am not certain that we want
to impose such conditions on the template types.

>> c- Use the template parameters in the function calls.

Christopher Kormanyos, could you indicate which compiler you are using ?
I could not reproduce the bug you mentioned.

Instead of:

template<typename T>
inline complex<T> exp(const complex<T>& x)
{
     return polar(exp(x.real()), x.imag());
}

I needed this:

template<typename T>
inline complex<T> exp(const complex<T>& x)
{
     return polar<T>(exp(x.real()), x.imag());
}

This code seems to work fine for gcc 4.4->4.7 and icc 12.1.

> I remain at your (and boost's) service to potentially moderate
> the review, if needed.

I don't know if it is up to me to decide but I am definitely interested.

Regards,

Matthieu

-- 
Matthieu Schaller

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk