diff options
author | Roger Sayle <roger@eyesopen.com> | 2005-12-10 01:14:38 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2005-12-10 01:14:38 +0000 |
commit | 1f39323fd33d37f686399ea596d98f87b784f164 (patch) | |
tree | 4f64ac85a76b8f914ad6a9c45baad925cfc39a07 | |
parent | 98bfa2fb8363218653eae38c90c6097b2bc7ce6b (diff) | |
download | gcc-1f39323fd33d37f686399ea596d98f87b784f164.zip gcc-1f39323fd33d37f686399ea596d98f87b784f164.tar.gz gcc-1f39323fd33d37f686399ea596d98f87b784f164.tar.bz2 |
re PR fortran/22527 (fortran produces mismatch types in comparision with integer to logic assignment)
PR fortran/22527
* f95-lang.c (gfc_truthvalue_conversion): Use a zero of the correct
integer type when building an inequality.
From-SVN: r108341
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/f95-lang.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 0f9cd13..58cf367f1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2005-12-09 Roger Sayle <roger@eyesopen.com> + + PR fortran/22527 + * f95-lang.c (gfc_truthvalue_conversion): Use a zero of the correct + integer type when building an inequality. + 2005-12-09 Richard Guenther <rguenther@suse.de> * f95-lang.c (build_builtin_fntypes): Use correct diff --git a/gcc/fortran/f95-lang.c b/gcc/fortran/f95-lang.c index 1ddad87..a5d1161 100644 --- a/gcc/fortran/f95-lang.c +++ b/gcc/fortran/f95-lang.c @@ -257,7 +257,8 @@ gfc_truthvalue_conversion (tree expr) if (TREE_CODE (expr) == INTEGER_CST) return integer_zerop (expr) ? boolean_false_node : boolean_true_node; else - return build2 (NE_EXPR, boolean_type_node, expr, integer_zero_node); + return build2 (NE_EXPR, boolean_type_node, expr, + build_int_cst (TREE_TYPE (expr), 0)); default: internal_error ("Unexpected type in truthvalue_conversion"); |