On Thursday 12 January 2006 14:50, Richard Henderson wrote:
> On Thu, Jan 12, 2006 at 02:46:35PM -0500, Diego Novillo wrote:
> > #4  0x080a3b9d in gfc_add_expr_to_block (block=0xbfffe898,
> > expr=0xb7ee4bac) at /home/dnovillo/gomp/src/gcc/fortran/trans.c:365
> > 360
> > 361       if (expr == NULL_TREE || IS_EMPTY_STMT (expr))
> > 362         return;
> > 363
> > 364       if (TREE_CODE (expr) != STATEMENT_LIST)
> > 365         expr = fold (expr);
>
> Hum.  I think perhaps we should be checking for tcc_statement
> here and not folding that.
>
Sounds good to me, but maybe the Fortran FE is relying on the recursive 
nature of fold() to handle things like 'A = 1 + 1'?

> > One obvious workaround is to check for OMP directives here, but in
> > general nothing stops a function from calling fold() on any arbitrary
> > expression.
>
> Aside from that assert, you mean?
>
Yup.

Reply via email to