Mercurial > emacs
comparison src/floatfns.c @ 4501:9352d7d021c2
* config.h.in (HAVE_LOGB, HAVE_FREXP): Add #undefs for the
configuration script to edit.
* floatfns.c (Flogb): Use HAVE_LOGB and HAVE_FREXP, instead of
assuming that all USG systems have FREXP.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Mon, 09 Aug 1993 06:04:14 +0000 |
parents | 8ab0a7453577 |
children | 6131dad14f6f |
comparison
equal
deleted
inserted
replaced
4500:56d7c4beae9f | 4501:9352d7d021c2 |
---|---|
633 { | 633 { |
634 Lisp_Object val; | 634 Lisp_Object val; |
635 int value; | 635 int value; |
636 double f = extract_float (arg); | 636 double f = extract_float (arg); |
637 | 637 |
638 #ifdef USG | 638 #ifdef HAVE_LOGB |
639 IN_FLOAT (value = logb (f), "logb", arg); | |
640 XSET (val, Lisp_Int, value); | |
641 #else | |
642 #ifdef HAVE_FREXP | |
639 { | 643 { |
640 int exp; | 644 int exp; |
641 | 645 |
642 IN_FLOAT (frexp (f, &exp), "logb", arg); | 646 IN_FLOAT (frexp (f, &exp), "logb", arg); |
643 XSET (val, Lisp_Int, exp-1); | 647 XSET (val, Lisp_Int, exp-1); |
644 } | 648 } |
645 #else | 649 #else |
646 IN_FLOAT (value = logb (f), "logb", arg); | 650 Well, what *do* you have? |
647 XSET (val, Lisp_Int, value); | 651 #endif |
648 #endif | 652 #endif |
649 | 653 |
650 return val; | 654 return val; |
651 } | 655 } |
652 | 656 |