re PR fortran/41859 (ICE on invalid expression involving DT with pointer components in I/O)
2010-08-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/41859 * resolve.c (resolve_transfer): Traverse operands and set expression to be checked to a non EXPR_OP type. From-SVN: r163363
This commit is contained in:
parent
b426fff1a3
commit
771c5727a0
|
@ -1,3 +1,9 @@
|
|||
2010-08-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||
|
||||
PR fortran/41859
|
||||
* resolve.c (resolve_transfer): Traverse operands and set expression
|
||||
to be checked to a non EXPR_OP type.
|
||||
|
||||
2010-08-19 Janus Weil <janus@gcc.gnu.org>
|
||||
|
||||
PR fortran/45290
|
||||
|
|
|
@ -7747,7 +7747,12 @@ resolve_transfer (gfc_code *code)
|
|||
|
||||
exp = code->expr1;
|
||||
|
||||
if (exp->expr_type != EXPR_VARIABLE && exp->expr_type != EXPR_FUNCTION)
|
||||
while (exp != NULL && exp->expr_type == EXPR_OP
|
||||
&& exp->value.op.op == INTRINSIC_PARENTHESES)
|
||||
exp = exp->value.op.op1;
|
||||
|
||||
if (exp == NULL || (exp->expr_type != EXPR_VARIABLE
|
||||
&& exp->expr_type != EXPR_FUNCTION))
|
||||
return;
|
||||
|
||||
sym = exp->symtree->n.sym;
|
||||
|
|
Loading…
Reference in New Issue