| Hello,
|
| I found some unexpected behavior in valarray, couldn't find anything
| previous referencing it, and I thought that I'd write before
| (erroneously??) submitting a bug.
|
| Simple case: repeated application of operator==
|
| Silly example:
|
| std::valarray<int> v1(100,1);
| std::valarray<int> v2(100,1);
| std::valarray<bool> v3(100,true);
|
| std::valarray<bool> res;
|
| res = ((v1 == v2) == v3);
|
|
| This returns a compile error.
|
|
| test.cc: In function `int main()':
| test.cc:16: error: no match for 'operator==' in 'std::operator== [with _Tp
| = int](((const std::valarray<int>&)((const std::valarray<int>*)(& v1))),
| ((const std::valarray<int>&)((const std::valarray<int>*)(& v2)))) == v1'
| /usr/include/gcc/darwin/4.0/c++/bits/valarray_after.h:394: note:
| candidates are: std::_Expr<std::_BinClos<std::__equal_to, std::_Expr,
| std::_ValArray, _Dom, typename _Dom::value_type>, typename
| std::__fun<std::__equal_to, typename _Dom1::value_type>::result_type>
| std::operator==(const std::_Expr<_Dom1, typename _Dom1::value_type>&,
| const std::valarray<typename _Dom::value_type>&) [with _Dom =
| std::_BinClos<std::__equal_to, std::_ValArray, std::_ValArray, int, int>]
| /usr/include/gcc/darwin/4.0/c++/bits/valarray_after.h:394: note:
| std::_Expr<std::_BinClos<std::__equal_to, std::_Expr, std::_Constant,
| _Dom, typename _Dom::value_type>, typename std::__fun<std::__equal_to,
| typename _Dom1::value_type>::result_type> std::operator==(const
| std::_Expr<_Dom1, typename _Dom1::value_type>&, const typename
| _Dom::value_type&) [with _Dom = std::_BinClos<std::__equal_to,
| std::_ValArray, std::_ValArray, int, int>]
|
|
| This seems to happen regardless of the type of v3 BTW.
Hmm, that must be a bug; please could you fill a PR in the GCC
bugzilla database
http://gcc.gnu.org/bugzilla/
and put me ([EMAIL PROTECTED]) in the CC:, and assign it to me?
Thanks!
-- Gaby
--
Summary: compile error in repeated application of
valarray<>::operator==
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: tegtmeye at eecis dot udel dot edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27867