primary.c (gfc_match_structure_constructor): Invert the assert logic.

2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>

	* primary.c (gfc_match_structure_constructor): Invert the assert logic.

From-SVN: r165033
This commit is contained in:
Mikael Morin 2010-10-06 14:47:40 +00:00
parent 3d2e4fe675
commit 3bf9ef1bc4
2 changed files with 6 additions and 3 deletions

View File

@ -1,3 +1,7 @@
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* primary.c (gfc_match_structure_constructor): Invert the assert logic.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* primary.c (gfc_free_structure_ctor_component): Also free the

View File

@ -2414,8 +2414,9 @@ gfc_match_structure_constructor (gfc_symbol *sym, gfc_expr **result,
/* No component should be left, as this should have caused an error in the
loop constructing the component-list (name that does not correspond to any
component in the structure definition). */
if (comp_head && sym->attr.extension)
if (comp_head)
{
gcc_assert (sym->attr.extension);
for (comp_iter = comp_head; comp_iter; comp_iter = comp_iter->next)
{
gfc_error ("component '%s' at %L has already been set by a "
@ -2424,8 +2425,6 @@ gfc_match_structure_constructor (gfc_symbol *sym, gfc_expr **result,
}
goto cleanup;
}
else
gcc_assert (!comp_head);
e = gfc_get_structure_constructor_expr (BT_DERIVED, 0, &where);
e->ts.u.derived = sym;