+2007-12-06 Kevin Ollivier <kevino@theolliviers.com>
+
+ MSVC7 build fix due to a compiler bug with placement new and/or
+ templates and casting.
+
+ Reviewed by Darin Adler.
+
+ * wtf/Vector.h:
+ (WTF::::append):
+
2007-12-06 Darin Adler <darin@apple.com>
Reviewed by Eric Seidel.
const U* ptr = &val;
if (size() == capacity())
ptr = expandCapacity(size() + 1, ptr);
+
+ // FIXME: MSVC7 generates compilation errors when trying to assign
+ // a pointer to a Vector of its base class (i.e. can't downcast). So far
+ // I've been unable to determine any logical reason for this, so I can
+ // only assume it is a bug with the compiler. Casting is very bad
+ // however because it subverts implicit conversions, so a better
+ // solution is direly needed.
+#if COMPILER(MSVC7)
+ new (end()) T(static_cast<T>(*ptr));
+#else
new (end()) T(*ptr);
+#endif
++m_size;
}