Fix building with gcc-4.5 http://bugs.gentoo.org/show_bug.cgi?id=318045 --- libs/libFreeMat/Array.cpp +++ libs/libFreeMat/Array.cpp @@ -465,7 +465,7 @@ void Array::set(const QString& field, ArrayVector& data) { if (isEmpty() && m_type.Class != Struct) - *this = Array::Array(Struct); + *this = Array(Struct); if (m_type.Class != Struct) throw Exception("Unsupported type for A.field=B"); StructArray &rp(structPtr()); if (isEmpty()) --- libs/libFreeMat/Math.cpp +++ libs/libFreeMat/Math.cpp @@ -1590,9 +1590,9 @@ Array Not(const Array& A) { if (A.isScalar()) - return Array::Array(!A.toClass(Bool).constRealScalar()); + return Array(!A.toClass(Bool).constRealScalar()); const Array &Abool(A.toClass(Bool)); - return Array::Array(Apply(Abool.constReal(),notfunc)); + return Array(Apply(Abool.constReal(),notfunc)); } Array Plus(const Array& A) { --- libs/libFreeMat/Operators.hpp +++ libs/libFreeMat/Operators.hpp @@ -142,11 +142,11 @@ if (!Bcast.isScalar()) Bcast = Bcast.asDenseArray(); if (Acast.isScalar() && Bcast.isScalar()) { if (Acast.allReal() && Bcast.allReal()) { - F = Array::Array(Op::func(Acast.constRealScalar(), + F = Array(Op::func(Acast.constRealScalar(), Bcast.constRealScalar())); } else { Acast.forceComplex(); Bcast.forceComplex(); - F = Array::Array(T(0),T(0)); + F = Array(T(0),T(0)); Op::func(Acast.constRealScalar(), Acast.constImagScalar(), Bcast.constRealScalar(), @@ -155,7 +155,7 @@ } } else if (Acast.isScalar()) { if (Acast.allReal() && Bcast.allReal()) { - F = Array::Array(Tclass,Bcast.dimensions()); + F = Array(Tclass,Bcast.dimensions()); T* ret = F.real().data(); const T& Ap = Acast.constRealScalar(); const T* Bp = Bcast.constReal().constData(); @@ -163,7 +163,7 @@ for (uint64 i=0;i().data(); T* Ci = F.imag().data(); const T& Ar = Acast.constRealScalar(); @@ -175,7 +175,7 @@ } } else if (Bcast.isScalar()) { if (Bcast.allReal() && Acast.allReal()) { - F = Array::Array(Tclass,Acast.dimensions()); + F = Array(Tclass,Acast.dimensions()); T* ret = F.real().data(); const T* Ap = Acast.constReal().constData(); const T& Bp = Bcast.constRealScalar(); @@ -183,7 +183,7 @@ for (uint64 i=0;i().data(); T* Ci = F.imag().data(); const T* Ar = Acast.constReal().constData(); @@ -197,7 +197,7 @@ if (Acast.dimensions() != Bcast.dimensions()) throw Exception("size mismatch in arguments to binary operator"); if (Bcast.allReal() && Acast.allReal()) { - F = Array::Array(Tclass,Acast.dimensions()); + F = Array(Tclass,Acast.dimensions()); T* ret = F.real().data(); const T* Ap = Acast.constReal().constData(); const T* Bp = Bcast.constReal().constData(); @@ -205,7 +205,7 @@ for (uint64 i=0;i().data(); T* Ci = F.imag().data(); const T* Ar = Acast.constReal().constData(); @@ -328,17 +328,17 @@ if (!Acast.isScalar()) Acast = Acast.asDenseArray(); if (!Bcast.isScalar()) Bcast = Bcast.asDenseArray(); if (Acast.isScalar() && Bcast.isScalar()) { - F = Array::Array(Op::func(Acast.constRealScalar(), + F = Array(Op::func(Acast.constRealScalar(), Bcast.constRealScalar())); } else if (Acast.isScalar()) { - F = Array::Array(Bool,Bcast.dimensions()); + F = Array(Bool,Bcast.dimensions()); bool* ret = F.real().data(); const T& Ap = Acast.constRealScalar(); const T* Bp = Bcast.constReal().constData(); uint64 q = uint64(Bcast.length()); for (uint64 i=0;i().data(); const T* Ap = Acast.constReal().constData(); const T& Bp = Bcast.constRealScalar(); @@ -347,7 +347,7 @@ } else { if (Acast.dimensions() != Bcast.dimensions()) throw Exception("size mismatch in arguments to binary operator"); - F = Array::Array(Bool,Acast.dimensions()); + F = Array(Bool,Acast.dimensions()); bool* ret = F.real().data(); const T* Ap = Acast.constReal().constData(); const T* Bp = Bcast.constReal().constData(); @@ -395,18 +395,18 @@ if (!Bcast.isScalar()) Bcast = Bcast.asDenseArray(); if (Acast.isScalar() && Bcast.isScalar()) { if (Acast.allReal() && Bcast.allReal()) { - F = Array::Array(Op::func(Acast.constRealScalar(), + F = Array(Op::func(Acast.constRealScalar(), Bcast.constRealScalar())); } else { Acast.forceComplex(); Bcast.forceComplex(); - F = Array::Array(Op::func(Acast.constRealScalar(), + F = Array(Op::func(Acast.constRealScalar(), Acast.constImagScalar(), Bcast.constRealScalar(), Bcast.constImagScalar())); } } else if (Acast.isScalar()) { if (Acast.allReal() && Bcast.allReal()) { - F = Array::Array(Bool,Bcast.dimensions()); + F = Array(Bool,Bcast.dimensions()); bool* ret = F.real().data(); const T& Ap = Acast.constRealScalar(); const T* Bp = Bcast.constReal().constData(); @@ -414,7 +414,7 @@ for (uint64 i=0;i().data(); const T& Ar = Acast.constRealScalar(); const T& Ai = Acast.constImagScalar(); @@ -425,7 +425,7 @@ } } else if (Bcast.isScalar()) { if (Bcast.allReal() && Acast.allReal()) { - F = Array::Array(Bool,Acast.dimensions()); + F = Array(Bool,Acast.dimensions()); bool* ret = F.real().data(); const T* Ap = Acast.constReal().constData(); const T& Bp = Bcast.constRealScalar(); @@ -433,7 +433,7 @@ for (uint64 i=0;i().data(); const T* Ar = Acast.constReal().constData(); const T* Ai = Acast.constImag().constData(); @@ -446,7 +446,7 @@ if (Acast.dimensions() != Bcast.dimensions()) throw Exception("size mismatch in arguments to binary operator"); if (Bcast.allReal() && Acast.allReal()) { - F = Array::Array(Bool,Acast.dimensions()); + F = Array(Bool,Acast.dimensions()); bool* ret = F.real().data(); const T* Ap = Acast.constReal().constData(); const T* Bp = Bcast.constReal().constData(); @@ -454,7 +454,7 @@ for (uint64 i=0;i().data(); const T* Ar = Acast.constReal().constData(); const T* Ai = Acast.constImag().constData(); @@ -533,9 +533,9 @@ if (!Acast.isScalar()) Acast = Acast.asDenseArray(); if (Acast.isScalar()) { if (Acast.allReal()) { - F = Array::Array(Op::func(Acast.constRealScalar())); + F = Array(Op::func(Acast.constRealScalar())); } else { - F = Array::Array(T(0),T(0)); + F = Array(T(0),T(0)); Op::func(Acast.constRealScalar(), Acast.constImagScalar(), F.realScalar(),F.imagScalar());