mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-23 18:14:13 +08:00
[gdb/build,c++17] Fix use of deprecated std::uncaught_exception
When compiling gdb with -std=gnu++17, we run into: ... ../../gdb/inferior.h: In member function ‘void \ infcall_suspend_state_deleter::operator()(infcall_suspend_state*) const’: ../../gdb/inferior.h:83:12: error: ‘bool std::uncaught_exception()’ is \ deprecated [-Werror=deprecated-declarations] 83 | if (!std::uncaught_exception ()) ... Fix this by rewriting using std::uncaught_exceptions. Tested on x86_64-linux with gcc 9.3.1 and -std=gnu17/gnu++17. Tested with test-case from RFC patch https://sourceware.org/pipermail/gdb-patches/2020-June/169970.html. gdb/ChangeLog: 2020-07-05 Tom de Vries <tdevries@suse.de> PR build/26187 * inferior.h (struct infcall_suspend_state_deleter): If available, use std::uncaught_exceptions instead of deprecated std::uncaught_exception.
This commit is contained in:
parent
983d1fb49c
commit
1e7c1b2242
@ -1,3 +1,10 @@
|
||||
2020-07-05 Tom de Vries <tdevries@suse.de>
|
||||
|
||||
PR build/26187
|
||||
* inferior.h (struct infcall_suspend_state_deleter): If available, use
|
||||
std::uncaught_exceptions instead of deprecated
|
||||
std::uncaught_exception.
|
||||
|
||||
2020-07-02 Simon Marchi <simon.marchi@polymtl.ca>
|
||||
|
||||
* macroexp.h (macro_stringify): Return
|
||||
|
@ -21,6 +21,8 @@
|
||||
#if !defined (INFERIOR_H)
|
||||
#define INFERIOR_H 1
|
||||
|
||||
#include <exception>
|
||||
|
||||
struct target_waitstatus;
|
||||
struct frame_info;
|
||||
struct ui_file;
|
||||
@ -80,7 +82,13 @@ struct infcall_suspend_state_deleter
|
||||
/* If we are restoring the inferior state due to an exception,
|
||||
some error message will be printed. So, only warn the user
|
||||
when we cannot restore during normal execution. */
|
||||
if (!std::uncaught_exception ())
|
||||
bool unwinding;
|
||||
#if __cpp_lib_uncaught_exceptions
|
||||
unwinding = std::uncaught_exceptions () > 0;
|
||||
#else
|
||||
unwinding = std::uncaught_exception ();
|
||||
#endif
|
||||
if (!unwinding)
|
||||
warning (_("Failed to restore inferior state: %s"), e.what ());
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user