comparison src/floatfns.c @ 5495:87f9165f5b14

[MSDOS]: Don't define HAVE_MATHERR.
author Richard M. Stallman <rms@gnu.org>
date Sat, 08 Jan 1994 09:16:45 +0000
parents e53d4ae93675
children 63bc8a14a073
comparison
equal deleted inserted replaced
5494:1ea2b4351945 5495:87f9165f5b14
50 #include "syssignal.h" 50 #include "syssignal.h"
51 51
52 Lisp_Object Qarith_error; 52 Lisp_Object Qarith_error;
53 53
54 #ifdef LISP_FLOAT_TYPE 54 #ifdef LISP_FLOAT_TYPE
55
56 #if 0 /* That is untrue--XINT is used below, and it uses INTBITS.
57 What in the world is values.h, anyway? */
58 #ifdef MSDOS
59 /* These are redefined in <values.h> and not used here */
60 #undef INTBITS
61 #undef LONGBITS
62 #undef SHORTBITS
63 #endif
64 #endif
55 65
56 /* Work around a problem that happens because math.h on hpux 7 66 /* Work around a problem that happens because math.h on hpux 7
57 defines two static variables--which, in Emacs, are not really static, 67 defines two static variables--which, in Emacs, are not really static,
58 because `static' is defined as nothing. The problem is that they are 68 because `static' is defined as nothing. The problem is that they are
59 defined both here and in lread.c. 69 defined both here and in lread.c.
68 /* This declaration is omitted on some systems, like Ultrix. */ 78 /* This declaration is omitted on some systems, like Ultrix. */
69 #if !defined (hpux) && defined (HAVE_LOGB) 79 #if !defined (hpux) && defined (HAVE_LOGB)
70 extern double logb (); 80 extern double logb ();
71 #endif /* !hpux && HAVE_LOGB */ 81 #endif /* !hpux && HAVE_LOGB */
72 82
83 #ifndef MSDOS
73 #if defined(DOMAIN) && defined(SING) && defined(OVERFLOW) 84 #if defined(DOMAIN) && defined(SING) && defined(OVERFLOW)
74 /* If those are defined, then this is probably a `matherr' machine. */ 85 /* If those are defined, then this is probably a `matherr' machine. */
75 # ifndef HAVE_MATHERR 86 # ifndef HAVE_MATHERR
76 # define HAVE_MATHERR 87 # define HAVE_MATHERR
77 # endif 88 # endif
89 #endif
78 #endif 90 #endif
79 91
80 #ifdef NO_MATHERR 92 #ifdef NO_MATHERR
81 #undef HAVE_MATHERR 93 #undef HAVE_MATHERR
82 #endif 94 #endif
811 { 823 {
812 double d = extract_float (arg); 824 double d = extract_float (arg);
813 if (d >= 0.0) 825 if (d >= 0.0)
814 IN_FLOAT (d = floor (d), "ftruncate", arg); 826 IN_FLOAT (d = floor (d), "ftruncate", arg);
815 else 827 else
816 IN_FLOAT (d = ceil (d), arg); 828 IN_FLOAT (d = ceil (d), "ftruncate", arg);
817 return make_float (d); 829 return make_float (d);
818 } 830 }
819 #endif 831 #endif
820 832
821 #ifdef FLOAT_CATCH_SIGILL 833 #ifdef FLOAT_CATCH_SIGILL