signgam.c 447 B

123456789101112131415161718192021222324252627
  1. #define _XOPEN_SOURCE 600
  2. #include <math.h>
  3. #include <stdio.h>
  4. double zero = 0.0;
  5. double mzero;
  6. int main(void)
  7. {
  8. double d;
  9. int errors = 0;
  10. mzero = copysign(zero, -1.0);
  11. d = lgamma(zero);
  12. printf("%g %d\n", d, signgam);
  13. errors += !(d == HUGE_VAL);
  14. errors += !(signgam == 1);
  15. d = lgamma(mzero);
  16. printf("%g %d\n", d, signgam);
  17. errors += !(d == HUGE_VAL);
  18. errors += !(signgam == -1);
  19. printf("Errors: %d\n", errors);
  20. return errors;
  21. }