[ 
https://issues.apache.org/jira/browse/STDCXX-622?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Travis Vitek closed STDCXX-622.
-------------------------------

    Resolution: Duplicate

> valarray operator requirements not consistent with standard
> -----------------------------------------------------------
>
>                 Key: STDCXX-622
>                 URL: https://issues.apache.org/jira/browse/STDCXX-622
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: 26. Numerics
>    Affects Versions: 4.2.0
>            Reporter: Travis Vitek
>            Assignee: Travis Vitek
>            Priority: Minor
>             Fix For: 4.2.1
>
>
> 26.3.2.6 p1 says
> Each of these operators may only be instantiated for a type T to which the 
> indicated operator can be
> applied. Each of these operators performs the indicated operation on each of 
> its elements and the corresponding
> element of the argument array. [for operators *=, /=, %=, +=, -=, ^=, &=, |=, 
> <<= and >>=]
> The current implementation of the valarray member operators violate these 
> requirements. Internally they use the transform algorithm with one of the 
> function adapters [i.e. multiplies, divides]. So valarray<T>::operator+=() 
> will use T::operator+() and T::operator=() when it should be using 
> T::operator+=(). As a direct result of this, the 26.valarray.cassign test 
> fails to compile on all platforms.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to