mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-21 20:40:05 +00:00
Avoid spurious failures from <fenv.h> fallback functions (bug 15654).
This commit is contained in:
parent
bfcacbdec0
commit
c91e082525
16
ChangeLog
16
ChangeLog
@ -1,3 +1,19 @@
|
||||
2013-06-20 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
[BZ #15654]
|
||||
* math/fedisblxcpt.c (fedisableexcept): Return 0.
|
||||
* math/feenablxcpt.c (feenableexcept): Return 0 for argument 0.
|
||||
* math/fegetenv.c (__fegetenv): Return 0.
|
||||
* math/fegetexcept.c (fegetexcept): Return 0.
|
||||
* math/fegetround.c (fegetround) [FE_TONEAREST]: Return
|
||||
FE_TONEAREST.
|
||||
* math/feholdexcpt.c (feholdexcept): Return 0.
|
||||
* math/fesetenv.c (__fesetenv): Return 0.
|
||||
* math/fesetround.c (fesetround) [FE_TONEAREST]: Return 0 for
|
||||
argument FE_TONEAREST.
|
||||
* math/feupdateenv.c (__feupdateenv): Return 0.
|
||||
* math/fgetexcptflg.c (__fegetexceptflag): Return 0.
|
||||
|
||||
2013-06-18 Roland McGrath <roland@hack.frob.com>
|
||||
|
||||
* elf/rtld-Rules (rtld-compile-command.S): New variable.
|
||||
|
2
NEWS
2
NEWS
@ -20,7 +20,7 @@ Version 2.18
|
||||
15361, 15366, 15380, 15381, 15394, 15395, 15405, 15406, 15409, 15416,
|
||||
15418, 15419, 15423, 15424, 15426, 15429, 15431, 15432, 15441, 15442,
|
||||
15448, 15465, 15480, 15485, 15488, 15490, 15492, 15493, 15497, 15506,
|
||||
15529, 15536, 15553, 15577, 15583, 15618, 15627, 15631.
|
||||
15529, 15536, 15553, 15577, 15583, 15618, 15627, 15631, 15654.
|
||||
|
||||
* CVE-2013-0242 Buffer overrun in regexp matcher has been fixed (Bugzilla
|
||||
#15078).
|
||||
|
@ -22,7 +22,7 @@
|
||||
int
|
||||
fedisableexcept (int excepts)
|
||||
{
|
||||
/* Signal failure. */
|
||||
return -1;
|
||||
/* All exception traps are disabled. */
|
||||
return 0;
|
||||
}
|
||||
stub_warning (fedisableexcept)
|
||||
|
@ -22,7 +22,10 @@
|
||||
int
|
||||
feenableexcept (int excepts)
|
||||
{
|
||||
/* Signal failure. */
|
||||
return -1;
|
||||
/* Signal failure if any exception traps are to be enabled. */
|
||||
if (excepts != 0)
|
||||
return -1;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
stub_warning (feenableexcept)
|
||||
|
@ -23,8 +23,8 @@
|
||||
int
|
||||
__fegetenv (fenv_t *envp)
|
||||
{
|
||||
/* This always fails. */
|
||||
return 1;
|
||||
/* Nothing to do. */
|
||||
return 0;
|
||||
}
|
||||
#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
|
||||
strong_alias (__fegetenv, __old_fegetenv)
|
||||
|
@ -22,7 +22,7 @@
|
||||
int
|
||||
fegetexcept (void)
|
||||
{
|
||||
/* Signal failure. */
|
||||
return -1;
|
||||
/* All exception traps are disabled. */
|
||||
return 0;
|
||||
}
|
||||
stub_warning (fegetexcept)
|
||||
|
@ -22,6 +22,10 @@
|
||||
int
|
||||
fegetround (void)
|
||||
{
|
||||
#ifdef FE_TONEAREST
|
||||
return FE_TONEAREST;
|
||||
#else
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
stub_warning (fegetround)
|
||||
|
@ -22,7 +22,8 @@
|
||||
int
|
||||
feholdexcept (fenv_t *envp)
|
||||
{
|
||||
return 1; /* Signal failure. */
|
||||
/* No exception traps to disable and no state to save. */
|
||||
return 0;
|
||||
}
|
||||
libm_hidden_def (feholdexcept)
|
||||
stub_warning (feholdexcept)
|
||||
|
@ -23,8 +23,8 @@
|
||||
int
|
||||
__fesetenv (const fenv_t *envp)
|
||||
{
|
||||
/* This always fails. */
|
||||
return 1;
|
||||
/* Nothing to do. */
|
||||
return 0;
|
||||
}
|
||||
#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
|
||||
strong_alias (__fesetenv, __old_fesetenv)
|
||||
|
@ -22,7 +22,11 @@
|
||||
int
|
||||
fesetround (int round)
|
||||
{
|
||||
#ifdef FE_TONEAREST
|
||||
return (round == FE_TONEAREST) ? 0 : 1;
|
||||
#else
|
||||
return 1; /* Signal we are unable to set the direction. */
|
||||
#endif
|
||||
}
|
||||
libm_hidden_def (fesetround)
|
||||
stub_warning (fesetround)
|
||||
|
@ -23,8 +23,8 @@
|
||||
int
|
||||
__feupdateenv (const fenv_t *envp)
|
||||
{
|
||||
/* This always fails. */
|
||||
return 1;
|
||||
/* Nothing to do. */
|
||||
return 0;
|
||||
}
|
||||
#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
|
||||
strong_alias (__feupdateenv, __old_feupdateenv)
|
||||
|
@ -23,8 +23,8 @@
|
||||
int
|
||||
__fegetexceptflag (fexcept_t *flagp, int excepts)
|
||||
{
|
||||
/* This always fails. */
|
||||
return 1;
|
||||
/* Nothing to do. */
|
||||
return 0;
|
||||
}
|
||||
#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
|
||||
strong_alias (__fegetexceptflag, __old_fegetexceptflag)
|
||||
|
Loading…
Reference in New Issue
Block a user