aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-10-21 21:21:25 +0000
committerRichard Stallman <rms@gnu.org>1992-10-21 21:21:25 +0000
commitd26d14f71ab8ba77f1edb305a7502a6f9ef91545 (patch)
tree3d19df810d0dd12412e9edad4dd0d3c70e2666b4 /gcc/fold-const.c
parentbff4b641c72b8be9b21fceb589f10ee337e55cfb (diff)
downloadgcc-d26d14f71ab8ba77f1edb305a7502a6f9ef91545.zip
gcc-d26d14f71ab8ba77f1edb305a7502a6f9ef91545.tar.gz
gcc-d26d14f71ab8ba77f1edb305a7502a6f9ef91545.tar.bz2
(real_value_truncate): Use push/pop_float_handler.
From-SVN: r2544
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r--gcc/fold-const.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 9b64082..c0aac0a 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -777,16 +777,17 @@ real_value_truncate (mode, arg)
volatile
#endif
REAL_VALUE_TYPE value;
- jmp_buf handler;
+ jmp_buf handler, old_handler;
+ int handled;
if (setjmp (handler))
{
error ("floating overflow");
return dconst0;
}
- set_float_handler (handler);
+ handled = push_float_handler (handler, old_handler);
value = REAL_VALUE_TRUNCATE (mode, arg);
- set_float_handler (NULL_PTR);
+ pop_float_handler (handled, old_handler);
return value;
}