diff --git a/ChangeLog b/ChangeLog index 56782dd4a7..fd281993c8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2015-09-15 Joseph Myers + [BZ #16296] + * math/fenv.h (fegetround): Use __attribute_pure__. + * include/fenv.h (__fegetround): Likewise. + [BZ #18595] * math/s_ctan.c (__ctan): Force underflow exception for results whose real or imaginary part has small absolute value. diff --git a/NEWS b/NEWS index 797d717fb4..b35d5424d3 100644 --- a/NEWS +++ b/NEWS @@ -9,12 +9,12 @@ Version 2.23 * The following bugs are resolved with this release: - 2542, 2543, 2558, 2898, 14341, 14912, 15786, 15918, 16141, 16517, 16519, - 16520, 16521, 16734, 16973, 16985, 17787, 17905, 18084, 18086, 18240, - 18265, 18370, 18421, 18480, 18525, 18595, 18610, 18618, 18647, 18661, - 18674, 18675, 18681, 18757, 18778, 18781, 18787, 18789, 18790, 18795, - 18796, 18820, 18823, 18824, 18863, 18870, 18873, 18875, 18887, 18921, - 18952, 18961, 18966. + 2542, 2543, 2558, 2898, 14341, 14912, 15786, 15918, 16141, 16296, 16517, + 16519, 16520, 16521, 16734, 16973, 16985, 17787, 17905, 18084, 18086, + 18240, 18265, 18370, 18421, 18480, 18525, 18595, 18610, 18618, 18647, + 18661, 18674, 18675, 18681, 18757, 18778, 18781, 18787, 18789, 18790, + 18795, 18796, 18820, 18823, 18824, 18863, 18870, 18873, 18875, 18887, + 18921, 18952, 18961, 18966. * The obsolete header has been removed. Programs that require this header must be updated to use instead. diff --git a/include/fenv.h b/include/fenv.h index 7070199ece..de4d46f8b7 100644 --- a/include/fenv.h +++ b/include/fenv.h @@ -13,7 +13,7 @@ extern int __fesetexceptflag (const fexcept_t *__flagp, int __excepts); extern int __fegetenv (fenv_t *__envp); extern int __fesetenv (const fenv_t *__envp); extern int __feupdateenv (const fenv_t *__envp); -extern __typeof (fegetround) __fegetround; +extern __typeof (fegetround) __fegetround __attribute_pure__; extern __typeof (feholdexcept) __feholdexcept; extern __typeof (fesetround) __fesetround; diff --git a/math/fenv.h b/math/fenv.h index b80d3c0532..9d4492f36c 100644 --- a/math/fenv.h +++ b/math/fenv.h @@ -82,7 +82,7 @@ extern int fetestexcept (int __excepts) __THROW; /* Rounding control. */ /* Get current rounding direction. */ -extern int fegetround (void) __THROW; +extern int fegetround (void) __THROW __attribute_pure__; /* Establish the rounding direction represented by ROUND. */ extern int fesetround (int __rounding_direction) __THROW;