eventually it turns out that our current
EIGEN_WORK_AROUND_QT_BUG_CALLING_WRONG_OPERATOR_NEW_FIXED_IN_QT_4_5
is the right way to go for allowing placement new on a class having
overloaded operator new. Qt 4.5 won't add the :: prefix. (I still do not
understand how you can distinghish a placement new from an overloaded
operator new taking an allocator as argument...)
diff --git a/test/qtvector.cpp b/test/qtvector.cpp
index a04002c..79bcba6 100644
--- a/test/qtvector.cpp
+++ b/test/qtvector.cpp
@@ -37,6 +37,10 @@
int cols = m.cols();
MatrixType x = MatrixType::Random(rows,cols), y = MatrixType::Random(rows,cols);
QVector<MatrixType> v(10, MatrixType(rows,cols)), w(20, y);
+ for(int i = 0; i < 20; i++)
+ {
+ VERIFY_IS_APPROX(w[i], y);
+ }
v[5] = x;
w[6] = v[5];
VERIFY_IS_APPROX(w[6], v[5]);
@@ -50,7 +54,6 @@
v[20] = x;
VERIFY_IS_APPROX(v[20], x);
v.fill(y,22);
- //v.resize(22);
VERIFY_IS_APPROX(v[21], y);
v.push_back(x);
VERIFY_IS_APPROX(v[22], x);
@@ -86,7 +89,6 @@
v[20] = x;
VERIFY_IS_APPROX(v[20], x);
v.fill(y,22);
- //v.resize(22);
VERIFY_IS_APPROX(v[21], y);
v.push_back(x);
VERIFY_IS_APPROX(v[22], x);
@@ -122,7 +124,6 @@
v[20] = x;
VERIFY_IS_APPROX(v[20], x);
v.fill(y,22);
- //v.resize(22);
VERIFY_IS_APPROX(v[21], y);
v.push_back(x);
VERIFY_IS_APPROX(v[22], x);