From: Joseph Myers Date: Fri, 27 Apr 2012 13:54:09 +0000 (+0000) Subject: Fix fenv.h fallback returns (bug 14027). X-Git-Tag: glibc-2.16-tps~541 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6ad3493e2247e6cb3c9e086e8cb1f8b51a5f27d6;p=thirdparty%2Fglibc.git Fix fenv.h fallback returns (bug 14027). --- diff --git a/ChangeLog b/ChangeLog index 50c27f7fda1..2035e58f35b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2012-04-27 Joseph Myers + + [BZ #14027] + * math/fclrexcpt.c (__feclearexcept): Return zero if nothing needs + to be done. + * math/fraiseexcpt.c (__feraiseexcept): Likewise. + * math/fsetexcptflg.c (__fesetexceptflag): Likewise. + 2012-04-26 Joseph Myers * sysdeps/unix/i386/brk.S: Remove file. diff --git a/NEWS b/NEWS index 00620ff42ca..cd523640c0f 100644 --- a/NEWS +++ b/NEWS @@ -22,7 +22,7 @@ Version 2.16 13846, 13851, 13852, 13854, 13871, 13872, 13873, 13879, 13883, 13886, 13892, 13895, 13908, 13910, 13911, 13912, 13913, 13915, 13916, 13917, 13918, 13919, 13920, 13921, 13926, 13927, 13928, 13938, 13963, 13967, - 13970, 13973 + 13970, 13973, 14027 * ISO C11 support: diff --git a/math/fclrexcpt.c b/math/fclrexcpt.c index 27e9bd0c32c..dcdcfbbe997 100644 --- a/math/fclrexcpt.c +++ b/math/fclrexcpt.c @@ -1,5 +1,5 @@ /* Clear given exceptions in current floating-point environment. - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -23,8 +23,8 @@ int __feclearexcept (int excepts) { - /* This always fails. */ - return 1; + /* This always fails unless nothing needs to be done. */ + return (excepts != 0); } #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) strong_alias (__feclearexcept, __old_feclearexcept) diff --git a/math/fraiseexcpt.c b/math/fraiseexcpt.c index cb752df7346..83a488b4567 100644 --- a/math/fraiseexcpt.c +++ b/math/fraiseexcpt.c @@ -1,5 +1,5 @@ /* Raise given exceptions. - Copyright (C) 1997, 1999, 2000, 2002 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -23,8 +23,8 @@ int __feraiseexcept (int excepts) { - /* This always fails. */ - return 1; + /* This always fails unless nothing needs to be done. */ + return (excepts != 0); } #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) strong_alias (__feraiseexcept, __old_feraiseexcept) diff --git a/math/fsetexcptflg.c b/math/fsetexcptflg.c index 3f6ac9893ba..7d27d7f2260 100644 --- a/math/fsetexcptflg.c +++ b/math/fsetexcptflg.c @@ -1,5 +1,5 @@ /* Set floating-point environment exception handling. - Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1997-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1997. @@ -23,8 +23,8 @@ int __fesetexceptflag (const fexcept_t *flagp, int excepts) { - /* This always fails. */ - return 1; + /* This always fails unless nothing needs to be done. */ + return (excepts != 0); } #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) strong_alias (__fesetexceptflag, __old_fesetexceptflag)