about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2012-04-27 13:54:09 +0000
committerJoseph Myers <joseph@codesourcery.com>2012-04-27 13:54:09 +0000
commit6ad3493e2247e6cb3c9e086e8cb1f8b51a5f27d6 (patch)
treea76d1eac1389644afd1d05dcc26917746235b931
parent5aeb141a565d0b2289b6036b079ee26ebdac0e94 (diff)
downloadglibc-6ad3493e2247e6cb3c9e086e8cb1f8b51a5f27d6.tar.gz
glibc-6ad3493e2247e6cb3c9e086e8cb1f8b51a5f27d6.tar.xz
glibc-6ad3493e2247e6cb3c9e086e8cb1f8b51a5f27d6.zip
Fix fenv.h fallback returns (bug 14027).
-rw-r--r--ChangeLog8
-rw-r--r--NEWS2
-rw-r--r--math/fclrexcpt.c6
-rw-r--r--math/fraiseexcpt.c6
-rw-r--r--math/fsetexcptflg.c6
5 files changed, 18 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 50c27f7fda..2035e58f35 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2012-04-27  Joseph Myers  <joseph@codesourcery.com>
+
+	[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  <joseph@codesourcery.com>
 
 	* sysdeps/unix/i386/brk.S: Remove file.
diff --git a/NEWS b/NEWS
index 00620ff42c..cd523640c0 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 27e9bd0c32..dcdcfbbe99 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 <drepper@cygnus.com>, 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 cb752df734..83a488b456 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 <drepper@cygnus.com>, 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 3f6ac9893b..7d27d7f226 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 <drepper@cygnus.com>, 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)