[MSVC 8.0] operator new doesn't throw std::bad_alloc on failure3
----------------------------------------------------------------
Key: STDCXX-77
URL: http://issues.apache.org/jira/browse/STDCXX-77
Project: STDCXX
Type: Bug
Reporter: Martin Sebor
$ cat t.cpp && nmake t.exe && ./t
#include <cassert>
#include <new>
#include <crtdbg.h>
int main ()
{
_CrtSetReportMode (_CRT_WARN, _CRTDBG_MODE_DEBUG);
_CrtSetReportMode (_CRT_ERROR, _CRTDBG_MODE_DEBUG);
_CrtSetReportMode (_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
int success = 0;
try {
operator new ((unsigned long)-1024);
}
catch (std::bad_alloc&) { success = 1; }
catch (...) { }
assert (success);
}
Microsoft (R) Program Maintenance Utility Version 7.10.3077
Copyright (C) Microsoft Corporation. All rights reserved.
link -nologo /NODEFAULTLIB:msvcprtd /debug /LIBPATH:.\..\..\..\..\lib
/OUT:t.exe t.obj testx15d_msvc_7_1.lib tlt15d_msvc_7_1.lib
std15d_msvc_7_1.lib user32.lib
LINK : LNK6004: t.exe not found or not built by the last incremental link;
performing full link
Assertion failed: success, file t.cpp, line 20
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira