aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/frontend-passes.c
diff options
context:
space:
mode:
authorJanus Weil <janus@gcc.gnu.org>2011-08-20 21:11:56 +0200
committerJanus Weil <janus@gcc.gnu.org>2011-08-20 21:11:56 +0200
commit13001f33ca62776df6dddf738d6f3f8633c3f3a9 (patch)
tree0b566ef40080433f1d226346402ff9a2e006672f /gcc/fortran/frontend-passes.c
parent894113c35c8cc3caa9b15860eb9ad06130776091 (diff)
downloadgcc-13001f33ca62776df6dddf738d6f3f8633c3f3a9.zip
gcc-13001f33ca62776df6dddf738d6f3f8633c3f3a9.tar.gz
gcc-13001f33ca62776df6dddf738d6f3f8633c3f3a9.tar.bz2
re PR fortran/49638 ([OOP] length parameter is ignored when overriding type bound character functions with constant length.)
2011-08-20 Janus Weil <janus@gcc.gnu.org> PR fortran/49638 * dependency.c (gfc_dep_compare_expr): Add new result value "-3". (gfc_check_element_vs_section,gfc_check_element_vs_element): Handle result value "-3". * frontend-passes.c (optimize_comparison): Ditto. * interface.c (gfc_check_typebound_override): Ditto. 2011-08-20 Janus Weil <janus@gcc.gnu.org> PR fortran/49638 * gfortran.dg/typebound_override_1.f90: Modified. From-SVN: r177932
Diffstat (limited to 'gcc/fortran/frontend-passes.c')
-rw-r--r--gcc/fortran/frontend-passes.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/frontend-passes.c b/gcc/fortran/frontend-passes.c
index 8ab46f6..8f2b1d1 100644
--- a/gcc/fortran/frontend-passes.c
+++ b/gcc/fortran/frontend-passes.c
@@ -682,7 +682,7 @@ optimize_comparison (gfc_expr *e, gfc_intrinsic_op op)
&& op1->ts.type != BT_COMPLEX && op2->ts.type != BT_COMPLEX))
{
eq = gfc_dep_compare_expr (op1, op2);
- if (eq == -2)
+ if (eq <= -2)
{
/* Replace A // B < A // C with B < C, and A // B < C // B
with A < C. */