------- Comment #2 from rguenth at gcc dot gnu dot org 2007-06-01 11:28 ------- We have a
<with_cleanup_expr 0x2aadb4071380 type <void_type 0x2aadb3ecf240 void VOID align 8 symtab 0 alias set -1 canonical type 0x2aadb3ecf240 pointer_to_this <pointer_type 0x2aadb3ecf300>> side-effects arg 0 <call_expr 0x2aadb3eb0a50 type <void_type 0x2aadb3ecf240 void> side-effects nothrow fn <addr_expr 0x2aadb4071140 type <pointer_type 0x2aadb406a900> constant invariant arg 0 <function_decl 0x2aadb4069000 __comp_dtor >> arg 0 <addr_expr 0x2aadb4071100 type <pointer_type 0x2aadb4061780> invariant arg 0 <var_decl 0x2aadb406f160 D.2557>> t.ii:8>> that we don't handle in lower_stmt (). The complete fn looks like { try { __comp_ctor (&D.2557); <<< Unknown tree: with_cleanup_expr __comp_dtor (&D.2557) >>> ; D.2559 = s (&D.2557); D.2565 = D.2559; #pragma omp for nowait for (i = 1; i <= D.2565; i = i + 1) OMP_CONTINUE } catch { <<<eh_filter ()>>> { terminate (); } } OMP_RETURN [nowait] } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32177