Skip to content

Instantly share code, notes, and snippets.

@vks
Created July 2, 2015 14:59
Show Gist options
  • Save vks/e806d6695cd01726c9b5 to your computer and use it in GitHub Desktop.
Save vks/e806d6695cd01726c9b5 to your computer and use it in GitHub Desktop.
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testFrexp() [with V = Vc_0::AVX2::Vector<float>]’:
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/tests/math.cpp:772:33: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<float>&, ExpV*)’
const V fraction = frexp(v, &exp);
^
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<float>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<float>’ to ‘Vc_0::AVX2::Vector<double>::AsArg {aka Vc_0::AVX2::Vector<double>}’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 2 from ‘ExpV* {aka Vc_0::simdarray<int, 8ul, Vc_0::AVX2::Vector<int>, 8ul>*}’ to ‘Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:772:33: note: ‘const Vc_0::AVX2::Vector<float>’ is not derived from ‘const Vc_0::simdarray<T, N>’
const V fraction = frexp(v, &exp);
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h: In instantiation of ‘class Vc_0::Common::MemoryDimensionBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>’:
/home/one/src/vc/common/memorybase.h:352:80: required from ‘class Vc_0::Common::MemoryBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>’
/home/one/src/vc/common/memory.h:275:63: required from ‘class Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’
/home/one/src/vc/tests/math.cpp:735:26: required from ‘void testFrexp() [with V = Vc_0::AVX2::Vector<double>]’
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/common/memorybase.h:208:39: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
typedef typename V::EntryType EntryType;
^
/home/one/src/vc/common/memorybase.h:237:93: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
std::is_same<typename std::remove_const<T>::type, EntryType *>::value ||
^
/home/one/src/vc/common/memorybase.h:237:93: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
/home/one/src/vc/common/memorybase.h:237:93: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
/home/one/src/vc/common/memorybase.h:237:93: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
/home/one/src/vc/common/memorybase.h:245:85: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
typename std::enable_if<std::is_same<T, const EntryType *>::value ||
^
/home/one/src/vc/common/memorybase.h:245:85: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
/home/one/src/vc/common/memorybase.h:245:85: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
/home/one/src/vc/common/memorybase.h:245:85: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h: In instantiation of ‘class Vc_0::Common::MemoryBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>’:
/home/one/src/vc/common/memory.h:275:63: required from ‘class Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’
/home/one/src/vc/tests/math.cpp:735:26: required from ‘void testFrexp() [with V = Vc_0::AVX2::Vector<double>]’
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/common/memorybase.h:361:39: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
typedef typename V::EntryType EntryType;
^
/home/one/src/vc/common/memorybase.h:374:69: error: no members matching ‘Vc_0::Common::MemoryDimensionBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>::entries’ in ‘class Vc_0::Common::MemoryDimensionBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>’
using MemoryDimensionBase<V, Parent, Dimension, RowMemory>::entries;
^
/home/one/src/vc/common/memorybase.h:375:69: error: no members matching ‘Vc_0::Common::MemoryDimensionBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>::scalar’ in ‘class Vc_0::Common::MemoryDimensionBase<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>, 1, void>’
using MemoryDimensionBase<V, Parent, Dimension, RowMemory>::scalar;
^
In file included from /home/one/src/vc/include/Vc/Memory:25:0,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memory.h: In instantiation of ‘class Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’:
/home/one/src/vc/tests/math.cpp:735:26: required from ‘void testFrexp() [with V = Vc_0::AVX2::Vector<double>]’
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/common/memory.h:278:43: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
typedef typename V::EntryType EntryType;
^
/home/one/src/vc/common/memory.h:283:18: error: ‘Size’ is not a member of ‘std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
enum InternalConstants {
^
/home/one/src/vc/common/memory.h:305:43: error: ‘Size’ is not a member of ‘std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
VectorsCount = PaddedSize / V::Size
^
/home/one/src/vc/common/memory.h:315:13: error: no type named ‘EntryType’ in ‘struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >’
Memory(std::initializer_list<EntryType> init)
^
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testFrexp() [with V = Vc_0::AVX2::Vector<double>]’:
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/tests/math.cpp:736:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 0] = T(0.25); expectedFraction[ 0] = T(.5 ); expectedExponent[ 0] = -1;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:736:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 0] = T(0.25); expectedFraction[ 0] = T(.5 ); expectedExponent[ 0] = -1;
^
/home/one/src/vc/tests/math.cpp:737:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 1] = T( 1); expectedFraction[ 1] = T(.5 ); expectedExponent[ 1] = 1;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:737:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 1] = T( 1); expectedFraction[ 1] = T(.5 ); expectedExponent[ 1] = 1;
^
/home/one/src/vc/tests/math.cpp:738:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 2] = T( 0); expectedFraction[ 2] = T(0. ); expectedExponent[ 2] = 0;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:738:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 2] = T( 0); expectedFraction[ 2] = T(0. ); expectedExponent[ 2] = 0;
^
/home/one/src/vc/tests/math.cpp:739:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 3] = T( 3); expectedFraction[ 3] = T(.75 ); expectedExponent[ 3] = 2;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:739:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 3] = T( 3); expectedFraction[ 3] = T(.75 ); expectedExponent[ 3] = 2;
^
/home/one/src/vc/tests/math.cpp:740:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 4] = T( 4); expectedFraction[ 4] = T(.5 ); expectedExponent[ 4] = 3;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:740:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 4] = T( 4); expectedFraction[ 4] = T(.5 ); expectedExponent[ 4] = 3;
^
/home/one/src/vc/tests/math.cpp:741:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 5] = T( 0.5); expectedFraction[ 5] = T(.5 ); expectedExponent[ 5] = 0;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:741:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 5] = T( 0.5); expectedFraction[ 5] = T(.5 ); expectedExponent[ 5] = 0;
^
/home/one/src/vc/tests/math.cpp:742:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 6] = T( 6); expectedFraction[ 6] = T( 6./8. ); expectedExponent[ 6] = 3;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:742:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 6] = T( 6); expectedFraction[ 6] = T( 6./8. ); expectedExponent[ 6] = 3;
^
/home/one/src/vc/tests/math.cpp:743:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 7] = T( 7); expectedFraction[ 7] = T( 7./8. ); expectedExponent[ 7] = 3;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:743:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 7] = T( 7); expectedFraction[ 7] = T( 7./8. ); expectedExponent[ 7] = 3;
^
/home/one/src/vc/tests/math.cpp:744:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 8] = T( 8); expectedFraction[ 8] = T( 8./16.); expectedExponent[ 8] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:744:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 8] = T( 8); expectedFraction[ 8] = T( 8./16.); expectedExponent[ 8] = 4;
^
/home/one/src/vc/tests/math.cpp:745:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[ 9] = T( 9); expectedFraction[ 9] = T( 9./16.); expectedExponent[ 9] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:745:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[ 9] = T( 9); expectedFraction[ 9] = T( 9./16.); expectedExponent[ 9] = 4;
^
/home/one/src/vc/tests/math.cpp:746:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[10] = T( 10); expectedFraction[10] = T(10./16.); expectedExponent[10] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:746:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[10] = T( 10); expectedFraction[10] = T(10./16.); expectedExponent[10] = 4;
^
/home/one/src/vc/tests/math.cpp:747:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[11] = T( 11); expectedFraction[11] = T(11./16.); expectedExponent[11] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:747:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[11] = T( 11); expectedFraction[11] = T(11./16.); expectedExponent[11] = 4;
^
/home/one/src/vc/tests/math.cpp:748:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[12] = T( 12); expectedFraction[12] = T(12./16.); expectedExponent[12] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:748:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[12] = T( 12); expectedFraction[12] = T(12./16.); expectedExponent[12] = 4;
^
/home/one/src/vc/tests/math.cpp:749:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[13] = T( 13); expectedFraction[13] = T(13./16.); expectedExponent[13] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:749:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[13] = T( 13); expectedFraction[13] = T(13./16.); expectedExponent[13] = 4;
^
/home/one/src/vc/tests/math.cpp:750:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[14] = T( 14); expectedFraction[14] = T(14./16.); expectedExponent[14] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:750:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[14] = T( 14); expectedFraction[14] = T(14./16.); expectedExponent[14] = 4;
^
/home/one/src/vc/tests/math.cpp:751:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[15] = T( 15); expectedFraction[15] = T(15./16.); expectedExponent[15] = 4;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:751:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[15] = T( 15); expectedFraction[15] = T(15./16.); expectedExponent[15] = 4;
^
/home/one/src/vc/tests/math.cpp:752:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[16] = T( 16); expectedFraction[16] = T(16./32.); expectedExponent[16] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:752:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[16] = T( 16); expectedFraction[16] = T(16./32.); expectedExponent[16] = 5;
^
/home/one/src/vc/tests/math.cpp:753:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[17] = T( 17); expectedFraction[17] = T(17./32.); expectedExponent[17] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:753:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[17] = T( 17); expectedFraction[17] = T(17./32.); expectedExponent[17] = 5;
^
/home/one/src/vc/tests/math.cpp:754:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[18] = T( 18); expectedFraction[18] = T(18./32.); expectedExponent[18] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:754:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[18] = T( 18); expectedFraction[18] = T(18./32.); expectedExponent[18] = 5;
^
/home/one/src/vc/tests/math.cpp:755:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[19] = T( 19); expectedFraction[19] = T(19./32.); expectedExponent[19] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:755:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[19] = T( 19); expectedFraction[19] = T(19./32.); expectedExponent[19] = 5;
^
/home/one/src/vc/tests/math.cpp:756:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[20] = T( 20); expectedFraction[20] = T(20./32.); expectedExponent[20] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:756:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[20] = T( 20); expectedFraction[20] = T(20./32.); expectedExponent[20] = 5;
^
/home/one/src/vc/tests/math.cpp:757:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[21] = T( 21); expectedFraction[21] = T(21./32.); expectedExponent[21] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:757:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[21] = T( 21); expectedFraction[21] = T(21./32.); expectedExponent[21] = 5;
^
/home/one/src/vc/tests/math.cpp:758:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[22] = T( 22); expectedFraction[22] = T(22./32.); expectedExponent[22] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:758:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[22] = T( 22); expectedFraction[22] = T(22./32.); expectedExponent[22] = 5;
^
/home/one/src/vc/tests/math.cpp:759:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[23] = T( 23); expectedFraction[23] = T(23./32.); expectedExponent[23] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:759:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[23] = T( 23); expectedFraction[23] = T(23./32.); expectedExponent[23] = 5;
^
/home/one/src/vc/tests/math.cpp:760:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[24] = T( 24); expectedFraction[24] = T(24./32.); expectedExponent[24] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:760:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[24] = T( 24); expectedFraction[24] = T(24./32.); expectedExponent[24] = 5;
^
/home/one/src/vc/tests/math.cpp:761:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[25] = T( 25); expectedFraction[25] = T(25./32.); expectedExponent[25] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:761:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[25] = T( 25); expectedFraction[25] = T(25./32.); expectedExponent[25] = 5;
^
/home/one/src/vc/tests/math.cpp:762:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[26] = T( 26); expectedFraction[26] = T(26./32.); expectedExponent[26] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:762:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[26] = T( 26); expectedFraction[26] = T(26./32.); expectedExponent[26] = 5;
^
/home/one/src/vc/tests/math.cpp:763:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[27] = T( 27); expectedFraction[27] = T(27./32.); expectedExponent[27] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:763:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[27] = T( 27); expectedFraction[27] = T(27./32.); expectedExponent[27] = 5;
^
/home/one/src/vc/tests/math.cpp:764:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[28] = T( 28); expectedFraction[28] = T(28./32.); expectedExponent[28] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:764:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[28] = T( 28); expectedFraction[28] = T(28./32.); expectedExponent[28] = 5;
^
/home/one/src/vc/tests/math.cpp:765:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[29] = T( 29); expectedFraction[29] = T(29./32.); expectedExponent[29] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:765:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[29] = T( 29); expectedFraction[29] = T(29./32.); expectedExponent[29] = 5;
^
/home/one/src/vc/tests/math.cpp:766:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[30] = T( 32); expectedFraction[30] = T(32./64.); expectedExponent[30] = 6;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:766:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[30] = T( 32); expectedFraction[30] = T(32./64.); expectedExponent[30] = 6;
^
/home/one/src/vc/tests/math.cpp:767:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[31] = T( 31); expectedFraction[31] = T(31./32.); expectedExponent[31] = 5;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:767:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[31] = T( 31); expectedFraction[31] = T(31./32.); expectedExponent[31] = 5;
^
/home/one/src/vc/tests/math.cpp:768:77: error: no match for ‘operator[]’ (operand types are ‘Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>’ and ‘int’)
input[32] = T( -0.); expectedFraction[32] = T(-0. ); expectedExponent[32] = 0;
^
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h:290:62: note: candidate: template<class IndexT> V Vc_0::Common::MemoryDimensionBase<V, Parent, 1, RowMemory>::operator[](Vc_0::AVX2::Vector<U>) const [with IndexT = IndexT; V = std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >; Parent = Vc_0::Common::Memory<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, 33ul, 0ul, true>; RowMemory = void]
template<typename IndexT> Vc_ALWAYS_INLINE Vc_PURE V operator[](Vector<IndexT> i) const
^
/home/one/src/vc/common/memorybase.h:290:62: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:768:77: note: mismatched types ‘Vc_0::AVX2::Vector<T>’ and ‘int’
input[32] = T( -0.); expectedFraction[32] = T(-0. ); expectedExponent[32] = 0;
^
/home/one/src/vc/tests/math.cpp:772:33: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<double>&, ExpV*)’
const V fraction = frexp(v, &exp);
^
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 2 from ‘ExpV* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’ to ‘Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::AVX2::Vector<float>::AsArg {aka Vc_0::AVX2::Vector<float>}’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:772:33: note: ‘const Vc_0::AVX2::Vector<double>’ is not derived from ‘const Vc_0::simdarray<T, N>’
const V fraction = frexp(v, &exp);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:331:5: note: candidate: template<class _Tp> constexpr typename __gnu_cxx::__enable_if<std::__is_integer<_Tp>::__value, double>::__type std::frexp(_Tp, int*)
frexp(_Tp __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:331:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:772:33: note: cannot convert ‘& exp’ (type ‘ExpV* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’) to type ‘int*’
const V fraction = frexp(v, &exp);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:323:3: note: candidate: long double std::frexp(long double, int*)
frexp(long double __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:323:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘long double’
/usr/include/c++/5.1.0/cmath:319:3: note: candidate: float std::frexp(float, int*)
frexp(float __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:319:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘float’
In file included from /home/one/src/vc/include/Vc/vector.h:189:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/sse/math.h:64:20: note: candidate: Vc_0::SSE::float_v Vc_0::SSE::frexp(const float_v&, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(const float_v &v, simdarray<int, 4, SSE::int_v, 4> *e) {
^
/home/one/src/vc/sse/math.h:64:20: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘const float_v& {aka const Vc_0::SSE::Vector<float>&}’
/home/one/src/vc/sse/math.h:49:21: note: candidate: Vc_0::SSE::double_v Vc_0::SSE::frexp(const double_v&, Vc_0::simdarray<int, 2ul, Vc_0::Scalar::Vector<int>, 1ul>*)
inline double_v frexp(const double_v &v, simdarray<int, 2, Scalar::int_v, 1> *e) {
^
/home/one/src/vc/sse/math.h:49:21: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘const double_v& {aka const Vc_0::SSE::Vector<double>&}’
In file included from /home/one/src/vc/include/Vc/vector.h:185:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/scalar/math.h:221:33: note: candidate: Vc_0::Scalar::Vector<double> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<double>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<double> frexp(Vector<double> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:221:33: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<double>’
/home/one/src/vc/scalar/math.h:218:32: note: candidate: Vc_0::Scalar::Vector<float> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<float>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<float> frexp(Vector<float> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:218:32: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<float>’
In file included from /home/one/src/vc/common/memory.h:32:0,
from /home/one/src/vc/include/Vc/Memory:25,
from /home/one/src/vc/include/Vc/IO:25,
from /home/one/src/vc/include/Vc/Vc:23,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/memorybase.h: In instantiation of ‘class Vc_0::Common::MemoryVector<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::LoadStoreFlags::LoadStoreFlags<> >’:
/home/one/src/vc/tests/math.cpp:778:57: required from ‘void testFrexp() [with V = Vc_0::AVX2::Vector<double>]’
/home/one/src/vc/tests/math.cpp:843:5: required from here
/home/one/src/vc/common/memorybase.h:65:35: error: no type named ‘EntryType’ in ‘Vc_0::Common::MemoryVector<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::LoadStoreFlags::LoadStoreFlags<> >::V {aka struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’
typedef typename V::EntryType EntryType;
^
/home/one/src/vc/common/memorybase.h:66:30: error: no type named ‘Mask’ in ‘Vc_0::Common::MemoryVector<std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >, Vc_0::LoadStoreFlags::LoadStoreFlags<> >::V {aka struct std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’
typedef typename V::Mask Mask;
^
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testLdexp() [with V = Vc_0::AVX2::Vector<float>]’:
/home/one/src/vc/tests/math.cpp:844:5: required from here
/home/one/src/vc/tests/math.cpp:791:26: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<float>&, ExpV*)’
const V m = frexp(v, &e);
^
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<float>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<float>’ to ‘Vc_0::AVX2::Vector<double>::AsArg {aka Vc_0::AVX2::Vector<double>}’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 2 from ‘ExpV* {aka Vc_0::simdarray<int, 8ul, Vc_0::AVX2::Vector<int>, 8ul>*}’ to ‘Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:791:26: note: ‘const Vc_0::AVX2::Vector<float>’ is not derived from ‘const Vc_0::simdarray<T, N>’
const V m = frexp(v, &e);
^
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testLdexp() [with V = Vc_0::AVX2::Vector<double>]’:
/home/one/src/vc/tests/math.cpp:844:5: required from here
/home/one/src/vc/tests/math.cpp:791:26: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<double>&, ExpV*)’
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 2 from ‘ExpV* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’ to ‘Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::AVX2::Vector<float>::AsArg {aka Vc_0::AVX2::Vector<float>}’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:791:26: note: ‘const Vc_0::AVX2::Vector<double>’ is not derived from ‘const Vc_0::simdarray<T, N>’
const V m = frexp(v, &e);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:331:5: note: candidate: template<class _Tp> constexpr typename __gnu_cxx::__enable_if<std::__is_integer<_Tp>::__value, double>::__type std::frexp(_Tp, int*)
frexp(_Tp __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:331:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:791:26: note: cannot convert ‘& e’ (type ‘ExpV* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’) to type ‘int*’
const V m = frexp(v, &e);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:323:3: note: candidate: long double std::frexp(long double, int*)
frexp(long double __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:323:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘long double’
/usr/include/c++/5.1.0/cmath:319:3: note: candidate: float std::frexp(float, int*)
frexp(float __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:319:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘float’
In file included from /home/one/src/vc/include/Vc/vector.h:189:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/sse/math.h:64:20: note: candidate: Vc_0::SSE::float_v Vc_0::SSE::frexp(const float_v&, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(const float_v &v, simdarray<int, 4, SSE::int_v, 4> *e) {
^
/home/one/src/vc/sse/math.h:64:20: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘const float_v& {aka const Vc_0::SSE::Vector<float>&}’
/home/one/src/vc/sse/math.h:49:21: note: candidate: Vc_0::SSE::double_v Vc_0::SSE::frexp(const double_v&, Vc_0::simdarray<int, 2ul, Vc_0::Scalar::Vector<int>, 1ul>*)
inline double_v frexp(const double_v &v, simdarray<int, 2, Scalar::int_v, 1> *e) {
^
/home/one/src/vc/sse/math.h:49:21: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘const double_v& {aka const Vc_0::SSE::Vector<double>&}’
In file included from /home/one/src/vc/include/Vc/vector.h:185:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/scalar/math.h:221:33: note: candidate: Vc_0::Scalar::Vector<double> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<double>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<double> frexp(Vector<double> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:221:33: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<double>’
/home/one/src/vc/scalar/math.h:218:32: note: candidate: Vc_0::Scalar::Vector<float> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<float>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<float> frexp(Vector<float> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:218:32: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<float>’
In file included from /home/one/src/vc/tests/unittest-old.h:19:0,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/math.cpp:792:22: error: no matching function for call to ‘ldexp(const Vc_0::AVX2::Vector<double>&, ExpV&)’
COMPARE(ldexp(m, e), v) << ", m = " << m << ", e = " << e;
^
/home/one/src/vc/tests/unittest.h:1077:41: note: in definition of macro ‘COMPARE’
#define COMPARE(a, b) UnitTest::Compare(a, b, #a, #b, __FILE__, __LINE__) << ' '
^
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:106:1: note: candidate: double ldexp(double, int)
__MATHCALL (ldexp,, (_Mdouble_ __x, int __exponent));
^
/usr/include/bits/mathcalls.h:106:1: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:88:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::ldexp(Vc_0::AVX2::Vector<double>::AsArg, const Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>&)
inline double_v ldexp(double_v::AsArg v, const simdarray<int, 4, SSE::int_v, 4> &_e)
^
/home/one/src/vc/avx/math.h:88:17: note: no known conversion for argument 2 from ‘ExpV {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ to ‘const Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>&’
/home/one/src/vc/avx/math.h:96:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::ldexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>)
inline float_v ldexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> e)
^
/home/one/src/vc/avx/math.h:96:16: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::AVX2::Vector<float>::AsArg {aka Vc_0::AVX2::Vector<float>}’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1139:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::ldexp(const Vc_0::simdarray<T, N>&, const Vc_0::simdarray<int, N>&)
simdarray<T, N> ldexp(const simdarray<T, N> &x, const simdarray<int, N> &e)
^
/home/one/src/vc/common/simdarray.h:1139:17: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest-old.h:19:0,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/math.cpp:792:22: note: ‘const Vc_0::AVX2::Vector<double>’ is not derived from ‘const Vc_0::simdarray<T, N>’
COMPARE(ldexp(m, e), v) << ", m = " << m << ", e = " << e;
^
/home/one/src/vc/tests/unittest.h:1077:41: note: in definition of macro ‘COMPARE’
#define COMPARE(a, b) UnitTest::Compare(a, b, #a, #b, __FILE__, __LINE__) << ' '
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:350:5: note: candidate: template<class _Tp> constexpr typename __gnu_cxx::__enable_if<std::__is_integer<_Tp>::__value, double>::__type std::ldexp(_Tp, int)
ldexp(_Tp __x, int __exp)
^
/usr/include/c++/5.1.0/cmath:350:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest-old.h:19:0,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/math.cpp:792:22: note: cannot convert ‘e’ (type ‘ExpV {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’) to type ‘int’
COMPARE(ldexp(m, e), v) << ", m = " << m << ", e = " << e;
^
/home/one/src/vc/tests/unittest.h:1077:41: note: in definition of macro ‘COMPARE’
#define COMPARE(a, b) UnitTest::Compare(a, b, #a, #b, __FILE__, __LINE__) << ' '
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:342:3: note: candidate: constexpr long double std::ldexp(long double, int)
ldexp(long double __x, int __exp)
^
/usr/include/c++/5.1.0/cmath:342:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘long double’
/usr/include/c++/5.1.0/cmath:338:3: note: candidate: constexpr float std::ldexp(float, int)
ldexp(float __x, int __exp)
^
/usr/include/c++/5.1.0/cmath:338:3: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘float’
In file included from /home/one/src/vc/include/Vc/vector.h:189:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/sse/math.h:85:20: note: candidate: Vc_0::SSE::float_v Vc_0::SSE::ldexp(AsArg, const Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>&)
inline float_v ldexp(float_v::AsArg v, const simdarray<int, 4, SSE::int_v, 4> &_e) {
^
/home/one/src/vc/sse/math.h:85:20: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘AsArg {aka Vc_0::SSE::Vector<float>}’
/home/one/src/vc/sse/math.h:79:21: note: candidate: Vc_0::SSE::double_v Vc_0::SSE::ldexp(AsArg, const Vc_0::simdarray<int, 2ul, Vc_0::Scalar::Vector<int>, 1ul>&)
inline double_v ldexp(double_v::AsArg v, const simdarray<int, 2, Scalar::int_v, 1> &_e) {
^
/home/one/src/vc/sse/math.h:79:21: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘AsArg {aka Vc_0::SSE::Vector<double>}’
In file included from /home/one/src/vc/include/Vc/vector.h:185:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/scalar/math.h:228:33: note: candidate: Vc_0::Scalar::Vector<double> Vc_0::Scalar::ldexp(Vc_0::Scalar::Vector<double>, const Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>&)
Vc_ALWAYS_INLINE Vector<double> ldexp(Vector<double> x, const simdarray<int, 1, Vector<int>, 1> &e) {
^
/home/one/src/vc/scalar/math.h:228:33: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<double>’
/home/one/src/vc/scalar/math.h:225:32: note: candidate: Vc_0::Scalar::Vector<float> Vc_0::Scalar::ldexp(Vc_0::Scalar::Vector<float>, const Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>&)
Vc_ALWAYS_INLINE Vector<float> ldexp(Vector<float> x, const simdarray<int, 1, Vector<int>, 1> &e) {
^
/home/one/src/vc/scalar/math.h:225:32: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<float>’
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testUlpDiff() [with V = Vc_0::AVX2::Vector<float>]’:
/home/one/src/vc/tests/math.cpp:851:5: required from here
/home/one/src/vc/tests/math.cpp:807:18: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<float>&, Vc_0::AVX2::Vector<float>::IndexType*)’
Vc::frexp(base, &exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:807:18: note: ‘const Vc_0::AVX2::Vector<float>’ is not derived from ‘const Vc_0::simdarray<T, N>’
Vc::frexp(base, &exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 2 from ‘Vc_0::AVX2::Vector<float>::IndexType* {aka Vc_0::simdarray<int, 8ul, Vc_0::AVX2::Vector<int>, 8ul>*}’ to ‘Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*’
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<float>’ to ‘Vc_0::AVX2::Vector<double>::AsArg {aka Vc_0::AVX2::Vector<double>}’
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testUlpDiff() [with V = Vc_0::AVX2::Vector<double>]’:
/home/one/src/vc/tests/math.cpp:851:5: required from here
/home/one/src/vc/tests/math.cpp:807:18: error: no matching function for call to ‘frexp(const Vc_0::AVX2::Vector<double>&, Vc_0::AVX2::Vector<double>::IndexType*)’
Vc::frexp(base, &exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:807:18: note: ‘const Vc_0::AVX2::Vector<double>’ is not derived from ‘const Vc_0::simdarray<T, N>’
Vc::frexp(base, &exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 1 from ‘const Vc_0::AVX2::Vector<double>’ to ‘Vc_0::AVX2::Vector<float>::AsArg {aka Vc_0::AVX2::Vector<float>}’
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 2 from ‘Vc_0::AVX2::Vector<double>::IndexType* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’ to ‘Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*’
/home/one/src/vc/tests/math.cpp:808:71: error: no match for ‘operator-’ (operand types are ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ and ‘int’)
const V eps = ldexp(V(std::numeric_limits<T>::epsilon()), exp - 1);
^
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1105:43: note: candidate: template<class L, class R> Vc_0::result_vector_type<L, R> Vc_0::operator-(L&&, R&&)
Vc_INTRINSIC result_vector_type<L, R> operator op__(L &&lhs, R &&rhs) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘Vc_BINARY_OPERATORS_’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/simdarray.h:1110:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(Vc_BINARY_OPERATORS_)
^
/home/one/src/vc/common/simdarray.h:1105:43: note: template argument deduction/substitution failed:
Vc_INTRINSIC result_vector_type<L, R> operator op__(L &&lhs, R &&rhs) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘Vc_BINARY_OPERATORS_’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/simdarray.h:1110:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(Vc_BINARY_OPERATORS_)
^
In file included from /usr/include/c++/5.1.0/vector:65:0,
from /usr/include/c++/5.1.0/bits/random.h:34,
from /usr/include/c++/5.1.0/random:49,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_bvector.h:208:3: note: candidate: std::ptrdiff_t std::operator-(const std::_Bit_iterator_base&, const std::_Bit_iterator_base&)
operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
^
/usr/include/c++/5.1.0/bits/stl_bvector.h:208:3: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ to ‘const std::_Bit_iterator_base&’
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:1145:5: note: candidate: template<class _Iterator> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_Iterator>&, const std::move_iterator<_Iterator>&)
operator-(const move_iterator<_Iterator>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:1145:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:808:71: note: ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ is not derived from ‘const std::move_iterator<_Iterator>’
const V eps = ldexp(V(std::numeric_limits<T>::epsilon()), exp - 1);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:1138:5: note: candidate: template<class _IteratorL, class _IteratorR> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_Iterator>&, const std::move_iterator<_IteratorR>&)
operator-(const move_iterator<_IteratorL>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:1138:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:808:71: note: ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ is not derived from ‘const std::move_iterator<_Iterator>’
const V eps = ldexp(V(std::numeric_limits<T>::epsilon()), exp - 1);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:380:5: note: candidate: template<class _IteratorL, class _IteratorR> decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)
operator-(const reverse_iterator<_IteratorL>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:380:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:808:71: note: ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ is not derived from ‘const std::reverse_iterator<_Iterator>’
const V eps = ldexp(V(std::numeric_limits<T>::epsilon()), exp - 1);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:328:5: note: candidate: template<class _Iterator> typename std::reverse_iterator<_Iterator>::difference_type std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&)
operator-(const reverse_iterator<_Iterator>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:328:5: note: template argument deduction/substitution failed:
/home/one/src/vc/tests/math.cpp:808:71: note: ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’ is not derived from ‘const std::reverse_iterator<_Iterator>’
const V eps = ldexp(V(std::numeric_limits<T>::epsilon()), exp - 1);
^
In file included from /home/one/src/vc/include/Vc/vector.h:172:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/operators.h:170:45: note: candidate: template<class L, class R> Vc_0::Common::TypesForOperator<L, R> Vc_0::Common::operator-(L&&, R&&)
Vc_ALWAYS_INLINE TypesForOperator<L, R> operator op(L &&x, R &&y) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_GENERIC_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:192:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_GENERIC_OPERATOR)
^
/home/one/src/vc/common/operators.h:170:45: note: template argument deduction/substitution failed:
Vc_ALWAYS_INLINE TypesForOperator<L, R> operator op(L &&x, R &&y) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_GENERIC_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:192:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_GENERIC_OPERATOR)
^
/home/one/src/vc/common/operators.h:186:150: note: candidate: template<class L, class R> Vc_0::Common::Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> Vc_0::Common::operator-(L&&, R&&) <deleted>
Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> operator op(L &&, R &&) = delete;
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_INVALID_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:197:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_INVALID_OPERATOR)
^
/home/one/src/vc/common/operators.h:186:150: note: template argument deduction/substitution failed:
Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> operator op(L &&, R &&) = delete;
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_INVALID_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:197:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_INVALID_OPERATOR)
^
/home/one/src/vc/tests/math.cpp: In instantiation of ‘void testNaN() [with Vec = Vc_0::AVX2::Vector<double>]’:
/home/one/src/vc/tests/math.cpp:877:5: required from here
/home/one/src/vc/tests/math.cpp:576:36: error: ‘IndexesFromZero’ is not a member of ‘I {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’
const M mask(I::IndexesFromZero() == I::Zero());
^
/home/one/src/vc/tests/math.cpp:576:49: error: ‘Zero’ is not a member of ‘I {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’
const M mask(I::IndexesFromZero() == I::Zero());
^
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h: In instantiation of ‘V ulpDiffToReference(const V&, const V&) [with V = Vc_0::AVX2::Vector<float>; <template-parameter-1-2> = Vc_0::enable_if_default_type]’:
/home/one/src/vc/tests/math.cpp:801:5: required from ‘void testUlpDiff() [with V = Vc_0::AVX2::Vector<float>]’
/home/one/src/vc/tests/math.cpp:851:5: required from here
/home/one/src/vc/tests/ulp.h:98:10: error: no matching function for call to ‘frexp(Vc_0::AVX2::Vector<float>&, Vc_0::AVX2::Vector<float>::IndexType*)’
frexp(ref, &exp);
^
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<float>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<float>’ to ‘Vc_0::AVX2::Vector<double>::AsArg {aka Vc_0::AVX2::Vector<double>}’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 2 from ‘Vc_0::AVX2::Vector<float>::IndexType* {aka Vc_0::simdarray<int, 8ul, Vc_0::AVX2::Vector<int>, 8ul>*}’ to ‘Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:98:10: note: ‘Vc_0::AVX2::Vector<float>’ is not derived from ‘const Vc_0::simdarray<T, N>’
frexp(ref, &exp);
^
/home/one/src/vc/tests/ulp.h: In instantiation of ‘V ulpDiffToReference(const V&, const V&) [with V = Vc_0::AVX2::Vector<double>; <template-parameter-1-2> = Vc_0::enable_if_default_type]’:
/home/one/src/vc/tests/math.cpp:801:5: required from ‘void testUlpDiff() [with V = Vc_0::AVX2::Vector<double>]’
/home/one/src/vc/tests/math.cpp:851:5: required from here
/home/one/src/vc/tests/ulp.h:98:10: error: no matching function for call to ‘frexp(Vc_0::AVX2::Vector<double>&, Vc_0::AVX2::Vector<double>::IndexType*)’
In file included from /usr/include/features.h:365:0,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/os_defines.h:39,
from /usr/include/c++/5.1.0/x86_64-unknown-linux-gnu/bits/c++config.h:482,
from /usr/include/c++/5.1.0/type_traits:38,
from /home/one/src/vc/tests/typelist.h:32,
from /home/one/src/vc/tests/unittest.h:32,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/bits/mathcalls.h:103:1: note: candidate: double frexp(double, int*)
__MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
^
/usr/include/bits/mathcalls.h:103:1: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘double’
In file included from /home/one/src/vc/include/Vc/vector.h:194:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/avx/math.h:50:17: note: candidate: Vc_0::AVX2::double_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<double>::AsArg, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline double_v frexp(double_v::AsArg v, simdarray<int, 4, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:50:17: note: no known conversion for argument 2 from ‘Vc_0::AVX2::Vector<double>::IndexType* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’ to ‘Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*’
/home/one/src/vc/avx/math.h:69:16: note: candidate: Vc_0::AVX2::float_v Vc_0::AVX2::frexp(Vc_0::AVX2::Vector<float>::AsArg, Vc_0::simdarray<int, 8ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(float_v::AsArg v, simdarray<int, 8, SSE::int_v, 4> *e)
^
/home/one/src/vc/avx/math.h:69:16: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘Vc_0::AVX2::Vector<float>::AsArg {aka Vc_0::AVX2::Vector<float>}’
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1134:17: note: candidate: template<class T, long unsigned int N> Vc_0::simdarray<T, N> Vc_0::frexp(const Vc_0::simdarray<T, N>&, Vc_0::simdarray<int, N>*)
simdarray<T, N> frexp(const simdarray<T, N> &x, simdarray<int, N> *e)
^
/home/one/src/vc/common/simdarray.h:1134:17: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:98:10: note: ‘Vc_0::AVX2::Vector<double>’ is not derived from ‘const Vc_0::simdarray<T, N>’
frexp(ref, &exp);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:331:5: note: candidate: template<class _Tp> constexpr typename __gnu_cxx::__enable_if<std::__is_integer<_Tp>::__value, double>::__type std::frexp(_Tp, int*)
frexp(_Tp __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:331:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:98:10: note: cannot convert ‘& exp’ (type ‘Vc_0::AVX2::Vector<double>::IndexType* {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >*}’) to type ‘int*’
frexp(ref, &exp);
^
In file included from /usr/include/c++/5.1.0/random:38:0,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/cmath:323:3: note: candidate: long double std::frexp(long double, int*)
frexp(long double __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:323:3: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘long double’
/usr/include/c++/5.1.0/cmath:319:3: note: candidate: float std::frexp(float, int*)
frexp(float __x, int* __exp)
^
/usr/include/c++/5.1.0/cmath:319:3: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘float’
In file included from /home/one/src/vc/include/Vc/vector.h:189:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/sse/math.h:64:20: note: candidate: Vc_0::SSE::float_v Vc_0::SSE::frexp(const float_v&, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>*)
inline float_v frexp(const float_v &v, simdarray<int, 4, SSE::int_v, 4> *e) {
^
/home/one/src/vc/sse/math.h:64:20: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘const float_v& {aka const Vc_0::SSE::Vector<float>&}’
/home/one/src/vc/sse/math.h:49:21: note: candidate: Vc_0::SSE::double_v Vc_0::SSE::frexp(const double_v&, Vc_0::simdarray<int, 2ul, Vc_0::Scalar::Vector<int>, 1ul>*)
inline double_v frexp(const double_v &v, simdarray<int, 2, Scalar::int_v, 1> *e) {
^
/home/one/src/vc/sse/math.h:49:21: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘const double_v& {aka const Vc_0::SSE::Vector<double>&}’
In file included from /home/one/src/vc/include/Vc/vector.h:185:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/scalar/math.h:221:33: note: candidate: Vc_0::Scalar::Vector<double> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<double>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<double> frexp(Vector<double> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:221:33: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<double>’
/home/one/src/vc/scalar/math.h:218:32: note: candidate: Vc_0::Scalar::Vector<float> Vc_0::Scalar::frexp(Vc_0::Scalar::Vector<float>, Vc_0::simdarray<int, 1ul, Vc_0::Scalar::Vector<int>, 1ul>*)
Vc_ALWAYS_INLINE Vector<float> frexp(Vector<float> x, simdarray<int, 1, Vector<int>, 1> *e) {
^
/home/one/src/vc/scalar/math.h:218:32: note: no known conversion for argument 1 from ‘Vc_0::AVX2::Vector<double>’ to ‘Vc_0::Scalar::Vector<float>’
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:99:66: error: no match for ‘operator-’ (operand types are ‘const int’ and ‘Vc_0::AVX2::Vector<double>::IndexType {aka std::conditional<true, Vc_0::simdarray<int, 4ul, Vc_0::SSE::Vector<int>, 4ul>, Vc_0::simdarray<int, 4ul, Vc_0::Scalar::Vector<int>, 1ul> >}’)
diff += ldexp(abs(ref - val), std::numeric_limits<T>::digits - exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:174:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/simdarray.h:1105:43: note: candidate: template<class L, class R> Vc_0::result_vector_type<L, R> Vc_0::operator-(L&&, R&&)
Vc_INTRINSIC result_vector_type<L, R> operator op__(L &&lhs, R &&rhs) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘Vc_BINARY_OPERATORS_’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/simdarray.h:1110:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(Vc_BINARY_OPERATORS_)
^
/home/one/src/vc/common/simdarray.h:1105:43: note: template argument deduction/substitution failed:
Vc_INTRINSIC result_vector_type<L, R> operator op__(L &&lhs, R &&rhs) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘Vc_BINARY_OPERATORS_’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/simdarray.h:1110:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(Vc_BINARY_OPERATORS_)
^
In file included from /usr/include/c++/5.1.0/vector:65:0,
from /usr/include/c++/5.1.0/bits/random.h:34,
from /usr/include/c++/5.1.0/random:49,
from /usr/include/c++/5.1.0/bits/stl_algo.h:66,
from /usr/include/c++/5.1.0/algorithm:62,
from /home/one/src/vc/scalar/vector.h:33,
from /home/one/src/vc/include/Vc/vector.h:45,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_bvector.h:208:3: note: candidate: std::ptrdiff_t std::operator-(const std::_Bit_iterator_base&, const std::_Bit_iterator_base&)
operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
^
/usr/include/c++/5.1.0/bits/stl_bvector.h:208:3: note: no known conversion for argument 1 from ‘const int’ to ‘const std::_Bit_iterator_base&’
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:1145:5: note: candidate: template<class _Iterator> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_Iterator>&, const std::move_iterator<_Iterator>&)
operator-(const move_iterator<_Iterator>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:1145:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:99:66: note: mismatched types ‘const std::move_iterator<_Iterator>’ and ‘const int’
diff += ldexp(abs(ref - val), std::numeric_limits<T>::digits - exp);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:1138:5: note: candidate: template<class _IteratorL, class _IteratorR> decltype ((__x.base() - __y.base())) std::operator-(const std::move_iterator<_Iterator>&, const std::move_iterator<_IteratorR>&)
operator-(const move_iterator<_IteratorL>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:1138:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:99:66: note: mismatched types ‘const std::move_iterator<_Iterator>’ and ‘const int’
diff += ldexp(abs(ref - val), std::numeric_limits<T>::digits - exp);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:380:5: note: candidate: template<class _IteratorL, class _IteratorR> decltype ((__y.base() - __x.base())) std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)
operator-(const reverse_iterator<_IteratorL>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:380:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:99:66: note: mismatched types ‘const std::reverse_iterator<_Iterator>’ and ‘const int’
diff += ldexp(abs(ref - val), std::numeric_limits<T>::digits - exp);
^
In file included from /usr/include/c++/5.1.0/bits/stl_algobase.h:67:0,
from /usr/include/c++/5.1.0/bits/char_traits.h:39,
from /usr/include/c++/5.1.0/string:40,
from /usr/include/c++/5.1.0/stdexcept:39,
from /usr/include/c++/5.1.0/array:38,
from /home/one/src/vc/common/../traits/has_no_allocated_data.h:32,
from /home/one/src/vc/common/../traits/type_traits.h:34,
from /home/one/src/vc/common/types.h:38,
from /home/one/src/vc/include/Vc/vector.h:35,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/usr/include/c++/5.1.0/bits/stl_iterator.h:328:5: note: candidate: template<class _Iterator> typename std::reverse_iterator<_Iterator>::difference_type std::operator-(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_Iterator>&)
operator-(const reverse_iterator<_Iterator>& __x,
^
/usr/include/c++/5.1.0/bits/stl_iterator.h:328:5: note: template argument deduction/substitution failed:
In file included from /home/one/src/vc/tests/unittest.h:45:0,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/ulp.h:99:66: note: mismatched types ‘const std::reverse_iterator<_Iterator>’ and ‘const int’
diff += ldexp(abs(ref - val), std::numeric_limits<T>::digits - exp);
^
In file included from /home/one/src/vc/include/Vc/vector.h:172:0,
from /home/one/src/vc/include/Vc/Vc:22,
from /home/one/src/vc/tests/unittest.h:43,
from /home/one/src/vc/tests/unittest-old.h:19,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/common/operators.h:170:45: note: candidate: template<class L, class R> Vc_0::Common::TypesForOperator<L, R> Vc_0::Common::operator-(L&&, R&&)
Vc_ALWAYS_INLINE TypesForOperator<L, R> operator op(L &&x, R &&y) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_GENERIC_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:192:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_GENERIC_OPERATOR)
^
/home/one/src/vc/common/operators.h:170:45: note: template argument deduction/substitution failed:
Vc_ALWAYS_INLINE TypesForOperator<L, R> operator op(L &&x, R &&y) \
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_GENERIC_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:192:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_GENERIC_OPERATOR)
^
/home/one/src/vc/common/operators.h:186:150: note: candidate: template<class L, class R> Vc_0::Common::Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> Vc_0::Common::operator-(L&&, R&&) <deleted>
Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> operator op(L &&, R &&) = delete;
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_INVALID_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:197:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_INVALID_OPERATOR)
^
/home/one/src/vc/common/operators.h:186:150: note: template argument deduction/substitution failed:
Vc_does_not_allow_operands_to_a_binary_operator_which_can_have_different_SIMD_register_sizes_on_some_targets_and_thus_enforces_portability<L, R> operator op(L &&, R &&) = delete;
^
/home/one/src/vc/common/macros.h:207:48: note: in expansion of macro ‘VC_INVALID_OPERATOR’
#define _VC_APPLY_IMPL_1(macro, a, b, c, d, e) macro(a)
^
/home/one/src/vc/common/macros.h:243:5: note: in expansion of macro ‘_VC_APPLY_IMPL_1’
size(macro, -, a, b, c, d) \
^
/home/one/src/vc/common/macros.h:248:46: note: in expansion of macro ‘VC_LIST_ARITHMETICS’
#define VC_APPLY_0(_list, macro) _list(_VC_APPLY_IMPL_1, macro, 0, 0, 0, 0)
^
/home/one/src/vc/common/macros.h:258:36: note: in expansion of macro ‘VC_APPLY_0’
#define VC_ALL_ARITHMETICS(macro) VC_APPLY_0(VC_LIST_ARITHMETICS, macro)
^
/home/one/src/vc/common/operators.h:197:1: note: in expansion of macro ‘VC_ALL_ARITHMETICS’
VC_ALL_ARITHMETICS(VC_INVALID_OPERATOR)
^
In file included from /home/one/src/vc/tests/unittest-old.h:19:0,
from /home/one/src/vc/tests/math.cpp:29:
/home/one/src/vc/tests/unittest.h:272:6: warning: ‘UnitTest::{anonymous}::verify_vector_unit_supported_result’ defined but not used [-Wunused-variable]
bool verify_vector_unit_supported_result = verify_vector_unit_supported();
^
cc1plus: warning: unrecognized command line option ‘-Wno-tautological-compare’
cc1plus: warning: unrecognized command line option ‘-Wno-tautological-constant-out-of-range-compare’
make[2]: *** [tests/CMakeFiles/math_VC_LOG_ILP2_avx2.dir/math.cpp.o] Error 1
make[1]: *** [tests/CMakeFiles/math_VC_LOG_ILP2_avx2.dir/all] Error 2
make: *** [all] Error 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment