summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-27 16:59:32 +0000
committerkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-27 16:59:32 +0000
commit2c8f2ea6d9a433ef68a873d641484bce3763af7f (patch)
tree4dacd8456ba6df4e8259811d34bf0e6c3e064721
parent7b3e325bece9a82e510dcde8df963ab84f20dc7b (diff)
downloadppe42-gcc-2c8f2ea6d9a433ef68a873d641484bce3763af7f.tar.gz
ppe42-gcc-2c8f2ea6d9a433ef68a873d641484bce3763af7f.zip
2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/32899 * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison. 2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/32899 * gfortran.dg/logical_comp.f90: Update dg-error strings. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126985 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/resolve.c5
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/logical_comp.f906
4 files changed, 16 insertions, 5 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 7759da7a6a2..1a17c519405 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/32899
+ * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
+
2007-07-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
Daniel Franke <franke.daniel@gmail.com>
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index 7580d805e47..1a5c0011fd8 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -2830,8 +2830,9 @@ resolve_operator (gfc_expr *e)
if (op1->ts.type == BT_LOGICAL && op2->ts.type == BT_LOGICAL)
sprintf (msg,
_("Logicals at %%L must be compared with %s instead of %s"),
- e->value.op.operator == INTRINSIC_EQ ? ".eqv." : ".neqv.",
- gfc_op2string (e->value.op.operator));
+ (e->value.op.operator == INTRINSIC_EQ
+ || e->value.op.operator == INTRINSIC_EQ_OS)
+ ? ".eqv." : ".neqv.", gfc_op2string (e->value.op.operator));
else
sprintf (msg,
_("Operands of comparison operator '%s' at %%L are %s/%s"),
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index cdfbcb8ddcd..cc8cfc270d1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/32899
+ * gfortran.dg/logical_comp.f90: Update dg-error strings.
+
2007-07-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/32760
diff --git a/gcc/testsuite/gfortran.dg/logical_comp.f90 b/gcc/testsuite/gfortran.dg/logical_comp.f90
index 208cc4a9e66..bbf81260ba6 100644
--- a/gcc/testsuite/gfortran.dg/logical_comp.f90
+++ b/gcc/testsuite/gfortran.dg/logical_comp.f90
@@ -1,9 +1,9 @@
! { dg-do compile }
-! PR fortran/22503
+! PR fortran/22503, PR fortran/32899
! Suggest use of appropriate comparison operator
program foo
logical :: b
- b = b .eq. b ! { dg-error ".eqv. instead of .eq." }
- b = b .ne. b ! { dg-error ".neqv. instead of .ne." }
+ b = b .eq. b ! { dg-error "must be compared with" }
+ b = b .ne. b ! { dg-error "must be compared with" }
end program
OpenPOWER on IntegriCloud