Author: vitek Date: Tue Aug 5 10:56:58 2008 New Revision: 682837 URL: http://svn.apache.org/viewvc?rev=682837&view=rev Log: 2008-08-05 Travis Vitek <[EMAIL PROTECTED]>
Merge r682834, r682835 from branches/4.2.x: 2008-08-05 Travis Vitek <[EMAIL PROTECTED]> STDCXX-772 * tests/utilities/20.function.objects.cpp [__GNUG__]: Enable gcc specific workaround only for gcc-2.95 to silence bogus HP aCC 6/cadvise warning #20035-D. 2008-08-05 Travis Vitek <[EMAIL PROTECTED]> * tests/regress/21.string.append.stdcxx-438.cpp: Check pointer to silence HP aCC 6/cadvise warning #20035-D. * tests/support/18.exception.cpp (induce_exception): Provide deallocation code to avoid HP aCC 6/cadvise warning #20201-D. Modified: stdcxx/branches/4.3.x/tests/regress/21.string.append.stdcxx-438.cpp stdcxx/branches/4.3.x/tests/support/18.exception.cpp stdcxx/branches/4.3.x/tests/utilities/20.function.objects.cpp Modified: stdcxx/branches/4.3.x/tests/regress/21.string.append.stdcxx-438.cpp URL: http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/regress/21.string.append.stdcxx-438.cpp?rev=682837&r1=682836&r2=682837&view=diff ============================================================================== --- stdcxx/branches/4.3.x/tests/regress/21.string.append.stdcxx-438.cpp (original) +++ stdcxx/branches/4.3.x/tests/regress/21.string.append.stdcxx-438.cpp Tue Aug 5 10:56:58 2008 @@ -39,6 +39,9 @@ void* operator new (std::size_t n) throw (std::bad_alloc) { void* const ptr = std::malloc (n + sizeof n); + if (!ptr) + return 0; + std::memset (ptr, -1, n); *(std::size_t*)ptr = n; return (std::size_t*)ptr + 1; Modified: stdcxx/branches/4.3.x/tests/support/18.exception.cpp URL: http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/support/18.exception.cpp?rev=682837&r1=682836&r2=682837&view=diff ============================================================================== --- stdcxx/branches/4.3.x/tests/support/18.exception.cpp (original) +++ stdcxx/branches/4.3.x/tests/support/18.exception.cpp Tue Aug 5 10:56:58 2008 @@ -803,7 +803,9 @@ // try to allocate a huge amount of memory to induce bad_alloc const std::size_t huge_amount = _RWSTD_SIZE_MAX - 4096; - ::operator new (huge_amount); + void * const p = ::operator new (huge_amount); + + ::operator delete (p); # ifndef _RWSTD_NO_SETRLIMIT # if !defined (__HP_aCC) Modified: stdcxx/branches/4.3.x/tests/utilities/20.function.objects.cpp URL: http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/tests/utilities/20.function.objects.cpp?rev=682837&r1=682836&r2=682837&view=diff ============================================================================== --- stdcxx/branches/4.3.x/tests/utilities/20.function.objects.cpp (original) +++ stdcxx/branches/4.3.x/tests/utilities/20.function.objects.cpp Tue Aug 5 10:56:58 2008 @@ -501,12 +501,16 @@ #undef CTOR_ARG_LIST +#if defined __GNUG__ && __GNUG__ < 3 && __GNU_MINOR__ < 96 // broken out of the macro definition to work around // a bug in g++ 2.95.2 parser std::minus<int> obj_minus; -// use std::negate<> as an argument in negator ctors -#define CTOR_ARG_LIST (obj_minus, 1) + // use std::negate<> as an argument in negator ctors +# define CTOR_ARG_LIST (obj_minus, 1) +#else +# define CTOR_ARG_LIST (std::minus<int>(), 1) +#endif // 20.3.6.1, p1 and p2 TEST_UNARY_OP (binder1st<std::minus<int> >, 1 -, 0);