aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran
diff options
context:
space:
mode:
authorSteven G. Kargl <kargl@gcc.gnu.org>2015-07-14 21:44:46 +0000
committerSteven G. Kargl <kargl@gcc.gnu.org>2015-07-14 21:44:46 +0000
commitff7097f21e538fc38bf22e30acfbea74433fb2b4 (patch)
treebe0c833ab43339dfe5bcb5d62d90379dd934ef43 /gcc/fortran
parent6e5ad0f92c3e5b4f8c3fcf5a67265874beda1040 (diff)
downloadgcc-ff7097f21e538fc38bf22e30acfbea74433fb2b4.zip
gcc-ff7097f21e538fc38bf22e30acfbea74433fb2b4.tar.gz
gcc-ff7097f21e538fc38bf22e30acfbea74433fb2b4.tar.bz2
simplify.c (gfc_simplify_floor): Set precision of temporary to that of arg.
2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org> * simplify.c (gfc_simplify_floor): Set precision of temporary to that of arg. 2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org> gfortran.dg/pr66864.f90: New test. From-SVN: r225790
Diffstat (limited to 'gcc/fortran')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/simplify.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 0a2734b..b13f67f 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2015-07-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_floor): Set precision of temporary to
+ that of arg.
+
2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/64589
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index bc3ec3f..3fb9887 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -2351,9 +2351,7 @@ gfc_simplify_floor (gfc_expr *e, gfc_expr *k)
if (e->expr_type != EXPR_CONSTANT)
return NULL;
- gfc_set_model_kind (kind);
-
- mpfr_init (floor);
+ mpfr_init2 (floor, mpfr_get_prec (e->value.real));
mpfr_floor (floor, e->value.real);
result = gfc_get_constant_expr (BT_INTEGER, kind, &e->where);