On Thursday 12 January 2006 14:38, Richard Henderson wrote:

> Why would we be trying to fold OMP_SINGLE?
>
The Fortran FE is doing that when building the IL:

#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);
366

One obvious workaround is to check for OMP directives here, but in general 
nothing stops a function from calling fold() on any arbitrary expression.  
Admittedly, the fortran FE is the only doing this in such a seemingly 
non-sensical way.

Reply via email to