--- a/kerneltest/e32test/device/t_newldd.cpp Mon Oct 04 12:15:59 2010 +0100
+++ b/kerneltest/e32test/device/t_newldd.cpp Wed Oct 06 17:13:14 2010 +0100
@@ -161,12 +161,21 @@
RDebug::Printf("User-Side:vector operator new");
RDebug::Printf("OOM tests");
+#if defined(__ARMCC__) && __ARMCC_VERSION >= 400000 // Work-around a problem where compsupp doesn't overload the rvct 4.0 runtime
+ #define TEST_VEC_NEW_OOM(CLASS) \
+ RDebug::Printf("new " #CLASS "[%d]", KOOMArraySize );\
+ {\
+ CLASS* p##CLASS = new(std::nothrow) CLASS[KOOMArraySize];\
+ test_Equal(NULL, p##CLASS);\
+ }
+#else
#define TEST_VEC_NEW_OOM(CLASS) \
RDebug::Printf("new " #CLASS "[%d]", KOOMArraySize );\
{\
CLASS* p##CLASS = new CLASS[KOOMArraySize];\
test_Equal(NULL, p##CLASS);\
}
+#endif
TEST_VEC_NEW_OOM(XCtorAndDtor);
TEST_VEC_NEW_OOM(XCtorOnly);