http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46678
--- Comment #8 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> 2010-11-27 22:56:56 UTC --- This fixes it: Index: trans-decl.c =================================================================== --- trans-decl.c (revision 167208) +++ trans-decl.c (working copy) @@ -2952,7 +2952,7 @@ gfc_trans_auto_character_variable (gfc_symbol * sy gcc_assert (sym->backend_decl); gcc_assert (sym->ts.u.cl && sym->ts.u.cl->length); - gfc_start_block (&init); + gfc_init_block (&init); /* Evaluate the string length expression. */ gfc_conv_string_length (sym->ts.u.cl, NULL, &init); I wonder now how many other places we need to do this or do we need to fix gfc_start_block?