+2005-12-12 Steven G. Kargl <kargls@comcast.net>
+
+ PR fortran/25078
+ * match.c (gfc_match_equivalence): Count number of objects.
+
2005-12-11 Aldy Hernandez <aldyh@redhat.com>
* lang.opt: Add RejectNegative to ffixed-form and ffree-form.
match m;
gfc_common_head *common_head = NULL;
bool common_flag;
+ int cnt;
tail = NULL;
set = eq;
common_flag = FALSE;
+ cnt = 0;
for (;;)
{
if (m == MATCH_NO)
goto syntax;
+ /* count the number of objects. */
+ cnt++;
+
if (gfc_match_char ('%') == MATCH_YES)
{
gfc_error ("Derived type component %C is not a "
if (gfc_match_char (')') == MATCH_YES)
break;
+
if (gfc_match_char (',') != MATCH_YES)
goto syntax;
set = set->eq;
}
+ if (cnt < 2)
+ {
+ gfc_error ("EQUIVALENCE at %C requires two or more objects");
+ goto cleanup;
+ }
+
/* If one of the members of an equivalence is in common, then
mark them all as being in common. Before doing this, check
that members of the equivalence group are not in different
+2005-12-12 Steven G. Kargl <kargls@comcast.net>
+
+ PR fortran/25078
+ gfortran.dg/equiv_5.f90: New test.
+
2005-12-12 Daniel Berlin <dberlin@dberlin.org>
* gcc.dg/tree-ssa/ssa-pre-2.c: Update due to reassociation changes.