diff options
author | Pedro Alves <palves@redhat.com> | 2015-08-27 13:26:23 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2015-08-27 13:26:23 +0100 |
commit | a40805d4a73532dffc61e33f913e62b93214c998 (patch) | |
tree | 7d6bfce7bf8e0c583c600dcfd5966a8f5c155c67 /gdb/inflow.c | |
parent | 0750520d890bd6ac3ba958a921fbeebe5915e50f (diff) | |
download | gdb-a40805d4a73532dffc61e33f913e62b93214c998.zip gdb-a40805d4a73532dffc61e33f913e62b93214c998.tar.gz gdb-a40805d4a73532dffc61e33f913e62b93214c998.tar.bz2 |
gdb: Use sighandler_t everywhere
This fixes 14 build errors like these in C++ mode:
src/gdb/extension.c: In function ‘void install_sigint_handler(const signal_handler*)’:
src/gdb/extension.c:698:41: error: invalid conversion from ‘void (*)()’ to ‘__sighandler_t {aka void (*)(int)}’ [-fpermissive]
signal (SIGINT, handler_state->handler);
^
In file included from build-gnulib/import/signal.h:52:0,
from ../../src/gdb/extension.c:24:
/usr/include/signal.h:102:23: error: initializing argument 2 of ‘void (* signal(int, __sighandler_t))(int)’ [-fpermissive]
extern __sighandler_t signal (int __sig, __sighandler_t __handler)
^
Instead of this everywhere:
- RETSIGTYPE (*handle_sigint_for_compare) () = handle_sigint;
+ RETSIGTYPE (*handle_sigint_for_compare) (int) = handle_sigint;
Use sighandler_t (a GNU extension). That's OK to use unconditionaly
because gnulib's signal.h replacement makes sure that it is available.
gdb/ChangeLog:
2015-08-27 Pedro Alves <palves@redhat.com>
* cp-support.c (gdb_demangle): Use sighandler_t. Remove cast.
* extension-priv.h: Include signal.h.
(struct signal_handler) <handler>: Change type to sighandler_t.
* extension.c (install_gdb_sigint_handler): Use sighandler_t.
* inflow.c (sigint_ours, sigquit_ours): Change type to
sighandler_t.
(child_terminal_inferior): Remove casts.
(child_terminal_ours_1, new_tty): Use sighandler_t. Remove casts.
(osig): Change type to sighandler_t.
* nto-procfs.c (ofunc): Change type to sighandler_t.
(procfs_wait): Remove casts.
* remote-m32r-sdi.c (m32r_wait, m32r_load): Use sighandler_t.
* remote-sim.c (gdbsim_wait): Use sighandler_t.
* utils.c (wait_to_die_with_timeout): Use sighandler_t.
Diffstat (limited to 'gdb/inflow.c')
-rw-r--r-- | gdb/inflow.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/gdb/inflow.c b/gdb/inflow.c index a9db650..cdc47a0 100644 --- a/gdb/inflow.c +++ b/gdb/inflow.c @@ -101,8 +101,8 @@ inferior_process_group (void) we save our handlers in these two variables and set SIGINT and SIGQUIT to SIG_IGN. */ -static void (*sigint_ours) (); -static void (*sigquit_ours) (); +static sighandler_t sigint_ours; +static sighandler_t sigquit_ours; /* The name of the tty (from the `tty' command) that we're giving to the inferior when starting it up. This is only (and should only @@ -319,9 +319,9 @@ child_terminal_inferior (struct target_ops *self) if (!job_control) { - sigint_ours = (void (*)()) signal (SIGINT, SIG_IGN); + sigint_ours = signal (SIGINT, SIG_IGN); #ifdef SIGQUIT - sigquit_ours = (void (*)()) signal (SIGQUIT, SIG_IGN); + sigquit_ours = signal (SIGQUIT, SIG_IGN); #endif } @@ -417,13 +417,13 @@ child_terminal_ours_1 (int output_only) #ifdef SIGTTOU /* Ignore this signal since it will happen when we try to set the pgrp. */ - void (*osigttou) () = NULL; + sighandler_t osigttou = NULL; #endif int result; #ifdef SIGTTOU if (job_control) - osigttou = (void (*)()) signal (SIGTTOU, SIG_IGN); + osigttou = signal (SIGTTOU, SIG_IGN); #endif xfree (tinfo->ttystate); @@ -711,9 +711,9 @@ new_tty (void) tty = open ("/dev/tty", O_RDWR); if (tty > 0) { - void (*osigttou) (); + sighandler_t osigttou; - osigttou = (void (*)()) signal (SIGTTOU, SIG_IGN); + osigttou = signal (SIGTTOU, SIG_IGN); ioctl (tty, TIOCNOTTY, 0); close (tty); signal (SIGTTOU, osigttou); @@ -788,7 +788,7 @@ pass_signal (int signo) #endif } -static void (*osig) (); +static sighandler_t osig; static int osig_set; void @@ -799,7 +799,7 @@ set_sigint_trap (void) if (inf->attach_flag || tinfo->run_terminal) { - osig = (void (*)()) signal (SIGINT, pass_signal); + osig = signal (SIGINT, pass_signal); osig_set = 1; } else |