This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C++: operator new and disabled exceptions


Hi,

I tried to redefine the global "new" operator like the following code,
and it seems to work.

#include <new>
void * operator new (size_t n)
{
 return operator new (n, std::nothrow);
}

void * operator new [] (size_t n)
{
 return operator new [] (n, std::nothrow);
}


On 9/27/07, Christophe LYON <christophe.lyon@st.com> wrote:
> Hello,
>
> I am compiling a C++ application, which uses the 'new' operator, with
> exceptions disabled (-fno-exceptions).
>
> Yet, the new operator called is the one that throws an exception in case
> of failure. Why is it so ? Isn't it inconsistent with the
> -fno-exceptions flag?
>
> I imagined that compiling with -fno-exceptions would make the compiler
> generate calls to new(nothrow) instead.
>
> In my case, replacing all calls to new to new(nothrow) in the
> application is not an option.
>
> Thanks,
>
> Christophe.
>
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]