diff options
Diffstat (limited to 'gdb/target-delegates.c')
-rw-r--r-- | gdb/target-delegates.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c index 52034fe..5c2142b 100644 --- a/gdb/target-delegates.c +++ b/gdb/target-delegates.c @@ -83,6 +83,7 @@ struct dummy_target : public target_ops bool can_async_p () override; bool is_async_p () override; void async (int arg0) override; + int async_wait_fd () override; void thread_events (int arg0) override; bool supports_non_stop () override; bool always_non_stop_p () override; @@ -251,6 +252,7 @@ struct debug_target : public target_ops bool can_async_p () override; bool is_async_p () override; void async (int arg0) override; + int async_wait_fd () override; void thread_events (int arg0) override; bool supports_non_stop () override; bool always_non_stop_p () override; @@ -2162,6 +2164,31 @@ debug_target::async (int arg0) fputs_unfiltered (")\n", gdb_stdlog); } +int +target_ops::async_wait_fd () +{ + return this->beneath ()->async_wait_fd (); +} + +int +dummy_target::async_wait_fd () +{ + noprocess (); +} + +int +debug_target::async_wait_fd () +{ + int result; + fprintf_unfiltered (gdb_stdlog, "-> %s->async_wait_fd (...)\n", this->beneath ()->shortname ()); + result = this->beneath ()->async_wait_fd (); + fprintf_unfiltered (gdb_stdlog, "<- %s->async_wait_fd (", this->beneath ()->shortname ()); + fputs_unfiltered (") = ", gdb_stdlog); + target_debug_print_int (result); + fputs_unfiltered ("\n", gdb_stdlog); + return result; +} + void target_ops::thread_events (int arg0) { |