X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fcommon%2Fnew-op.c;h=7c5dba0be6da571adf38a6af4c47807159ad8bf6;hb=5b0e2db4fa08b43e9ff78d6e9a45d496522bd241;hp=c67239cbe87c1f7e22e234a1a2cc2920f9ed22a4;hpb=bbe910e6e1140cb484a74911f3cea854cf9e7e2a;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/common/new-op.c b/gdb/common/new-op.c index c67239cbe8..7c5dba0be6 100644 --- a/gdb/common/new-op.c +++ b/gdb/common/new-op.c @@ -1,6 +1,6 @@ /* Replace operator new/new[], for GDB, the GNU debugger. - Copyright (C) 2016 Free Software Foundation, Inc. + Copyright (C) 2016-2019 Free Software Foundation, Inc. This file is part of GDB. @@ -60,17 +60,14 @@ operator new (std::size_t sz) QUIT gdb_exception. This is necessary because operator new can only ever throw std::bad_alloc, or something that extends it. */ - TRY + try { malloc_failure (sz); } - CATCH (ex, RETURN_MASK_ALL) + catch (gdb_exception &ex) { - do_cleanups (all_cleanups ()); - - throw gdb_quit_bad_alloc (ex); + throw gdb_quit_bad_alloc (std::move (ex)); } - END_CATCH } return p; }