
22 Dec
2005
22 Dec
'05
9:47 a.m.
Hello, boost.test currently contains an assortment of new operators which IMO are not conforming to the C++ std. The implementation basically looks like this: p = std::malloc(n); if (!p) throw std::bad_alloc(); This ignores the fact the std::malloc() is allowed to return either 0 or some unique pointer on zero sized requests, whereas a C++ allocation function _must_ return a unique pointer for each zero sized request. If I'm correct, this could be easily fixed by changing all occurences of "p = std::malloc(n)" to "p = std::malloc(n ? n : 1)" or something similar. Regards, Markus