aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2012-09-07 01:46:44 -0700
committerPaul Eggert2012-09-07 01:46:44 -0700
commit1a4f1e9b4805cd80952946b5f4461eeb467d9509 (patch)
tree6f17957b784b3706a8bebe22c40475f5c8201af2 /src
parentc640e87d077ae51c922b703f4b44f05dfb0d1cfd (diff)
downloademacs-1a4f1e9b4805cd80952946b5f4461eeb467d9509.tar.gz
emacs-1a4f1e9b4805cd80952946b5f4461eeb467d9509.zip
More signal-handler cleanup.
* configure.ac (FLOAT_CHECK_DOMAIN): Comment fix (Bug#12327). * src/floatfns.c: Comment fix. * src/lisp.h (force_auto_save_soon): Declare regardless of SIGDANGER. SIGDANGER might not be in scope so "#ifdef SIGDANGER" is not right, and anyway the declaration is harmless even if SIGDANGER is not defined. * src/syssignal.h (SIGIO): Also #undef if (! defined FIONREAD || defined BROKEN_FIONREAD). systty.h formerly did this, but other source files not surprisingly expected syssignal.h to define, or not define, SIGIO, and it's cleaner to do it that way, for consistency. Include <sys/ioctl.h>, for FIONREAD. * src/systty.h (SIGIO): Do not #undef here; it's now syssignal.h's job. This eliminates a problem whereby other files mysteriously had to include "syssignal.h" before including "systty.h" if they wanted to use "#ifdef SIGIO".
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog17
-rw-r--r--src/floatfns.c2
-rw-r--r--src/lisp.h2
-rw-r--r--src/syssignal.h5
-rw-r--r--src/systty.h5
5 files changed, 22 insertions, 9 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 068584969f7..8cab03fca50 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,20 @@
12012-09-07 Paul Eggert <eggert@cs.ucla.edu>
2
3 More signal-handler cleanup (Bug#12327).
4 * floatfns.c: Comment fix.
5 * lisp.h (force_auto_save_soon): Declare regardless of SIGDANGER.
6 SIGDANGER might not be in scope so "#ifdef SIGDANGER" is not right,
7 and anyway the declaration is harmless even if SIGDANGER is not defined.
8 * syssignal.h (SIGIO): Also #undef if (! defined FIONREAD ||
9 defined BROKEN_FIONREAD). systty.h formerly did this, but other
10 source files not surprisingly expected syssignal.h to define, or
11 not define, SIGIO, and it's cleaner to do it that way, for consistency.
12 Include <sys/ioctl.h>, for FIONREAD.
13 * systty.h (SIGIO): Do not #undef here; it's now syssignal.h's job.
14 This eliminates a problem whereby other files mysteriously had
15 to include "syssignal.h" before including "systty.h" if they
16 wanted to use "#ifdef SIGIO".
17
12012-09-07 Eli Zaretskii <eliz@gnu.org> 182012-09-07 Eli Zaretskii <eliz@gnu.org>
2 19
3 * w32proc.c (sigaction): New function, emulates Posix 'sigaction'. 20 * w32proc.c (sigaction): New function, emulates Posix 'sigaction'.
diff --git a/src/floatfns.c b/src/floatfns.c
index e956dc22353..3a95d828c0c 100644
--- a/src/floatfns.c
+++ b/src/floatfns.c
@@ -38,7 +38,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
38 This has no effect if HAVE_MATHERR is defined. 38 This has no effect if HAVE_MATHERR is defined.
39 39
40 Define FLOAT_CHECK_DOMAIN if the float library doesn't handle errors by 40 Define FLOAT_CHECK_DOMAIN if the float library doesn't handle errors by
41 either setting errno, or signaling SIGFPE/SIGILL. Otherwise, domain and 41 either setting errno, or signaling SIGFPE. Otherwise, domain and
42 range checking will happen before calling the float routines. This has 42 range checking will happen before calling the float routines. This has
43 no effect if HAVE_MATHERR is defined (since matherr will be called when 43 no effect if HAVE_MATHERR is defined (since matherr will be called when
44 a domain error occurs.) 44 a domain error occurs.)
diff --git a/src/lisp.h b/src/lisp.h
index 28e8c1cd1e8..e6594b5890c 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -3221,9 +3221,7 @@ extern void cmd_error_internal (Lisp_Object, const char *);
3221extern Lisp_Object command_loop_1 (void); 3221extern Lisp_Object command_loop_1 (void);
3222extern Lisp_Object recursive_edit_1 (void); 3222extern Lisp_Object recursive_edit_1 (void);
3223extern void record_auto_save (void); 3223extern void record_auto_save (void);
3224#ifdef SIGDANGER
3225extern void force_auto_save_soon (void); 3224extern void force_auto_save_soon (void);
3226#endif
3227extern void init_keyboard (void); 3225extern void init_keyboard (void);
3228extern void syms_of_keyboard (void); 3226extern void syms_of_keyboard (void);
3229extern void keys_of_keyboard (void); 3227extern void keys_of_keyboard (void);
diff --git a/src/syssignal.h b/src/syssignal.h
index fe7b5f0e150..c5529ae718a 100644
--- a/src/syssignal.h
+++ b/src/syssignal.h
@@ -38,9 +38,12 @@ extern void emacs_sigaction_init (struct sigaction *, signal_handler_t);
38_Noreturn void croak (char *); 38_Noreturn void croak (char *);
39#endif 39#endif
40 40
41#if defined (SIGIO) && defined (BROKEN_SIGIO) 41/* Interrupt input is not used if there is no FIONREAD. */
42#include <sys/ioctl.h>
43#if defined BROKEN_SIGIO || ! defined FIONREAD || defined BROKEN_FIONREAD
42# undef SIGIO 44# undef SIGIO
43#endif 45#endif
46
44/* These are only used by AIX */ 47/* These are only used by AIX */
45#if defined (SIGPOLL) && defined (BROKEN_SIGPOLL) 48#if defined (SIGPOLL) && defined (BROKEN_SIGPOLL)
46#undef SIGPOLL 49#undef SIGPOLL
diff --git a/src/systty.h b/src/systty.h
index ae98f123f2a..b660441a91e 100644
--- a/src/systty.h
+++ b/src/systty.h
@@ -47,11 +47,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
47#undef ASYNC 47#undef ASYNC
48#endif 48#endif
49 49
50/* Interrupt input is not used if there is no FIONREAD. */
51#ifndef FIONREAD
52#undef SIGIO
53#endif
54
55 50
56/* Try to establish the correct character to disable terminal functions 51/* Try to establish the correct character to disable terminal functions
57 in a system-independent manner. Note that USG (at least) define 52 in a system-independent manner. Note that USG (at least) define