| # intdiv0.m4 serial 1 (gettext-0.11.3) | 
 | dnl Copyright (C) 2002 Free Software Foundation, Inc. | 
 | dnl This file is free software, distributed under the terms of the GNU | 
 | dnl General Public License.  As a special exception to the GNU General | 
 | dnl Public License, this file may be distributed as part of a program | 
 | dnl that contains a configuration script generated by Autoconf, under | 
 | dnl the same distribution terms as the rest of that program. | 
 |  | 
 | dnl From Bruno Haible. | 
 |  | 
 | AC_DEFUN([gt_INTDIV0], | 
 | [ | 
 |   AC_REQUIRE([AC_PROG_CC])dnl | 
 |   AC_REQUIRE([AC_CANONICAL_HOST])dnl | 
 |  | 
 |   AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], | 
 |     gt_cv_int_divbyzero_sigfpe, | 
 |     [ | 
 |       AC_TRY_RUN([ | 
 | #include <stdlib.h> | 
 | #include <signal.h> | 
 |  | 
 | static void | 
 | #ifdef __cplusplus | 
 | sigfpe_handler (int sig) | 
 | #else | 
 | sigfpe_handler (sig) int sig; | 
 | #endif | 
 | { | 
 |   /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */ | 
 |   exit (sig != SIGFPE); | 
 | } | 
 |  | 
 | int x = 1; | 
 | int y = 0; | 
 | int z; | 
 | int nan; | 
 |  | 
 | int main () | 
 | { | 
 |   signal (SIGFPE, sigfpe_handler); | 
 | /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */ | 
 | #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) | 
 |   signal (SIGTRAP, sigfpe_handler); | 
 | #endif | 
 | /* Linux/SPARC yields signal SIGILL.  */ | 
 | #if defined (__sparc__) && defined (__linux__) | 
 |   signal (SIGILL, sigfpe_handler); | 
 | #endif | 
 |  | 
 |   z = x / y; | 
 |   nan = y / y; | 
 |   exit (1); | 
 | } | 
 | ], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, | 
 |         [ | 
 |           # Guess based on the CPU. | 
 |           case "$host_cpu" in | 
 |             alpha* | i[34567]86 | m68k | s390*) | 
 |               gt_cv_int_divbyzero_sigfpe="guessing yes";; | 
 |             *) | 
 |               gt_cv_int_divbyzero_sigfpe="guessing no";; | 
 |           esac | 
 |         ]) | 
 |     ]) | 
 |   case "$gt_cv_int_divbyzero_sigfpe" in | 
 |     *yes) value=1;; | 
 |     *) value=0;; | 
 |   esac | 
 |   AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, | 
 |     [Define if integer division by zero raises signal SIGFPE.]) | 
 | ]) |