trans.c (gfc_add_expr_to_block): Do not fold tcc_statement nodes.
authorDiego Novillo <dnovillo@redhat.com>
Fri, 13 Jan 2006 14:20:01 +0000 (14:20 +0000)
committerDiego Novillo <dnovillo@gcc.gnu.org>
Fri, 13 Jan 2006 14:20:01 +0000 (09:20 -0500)
* trans.c (gfc_add_expr_to_block): Do not fold tcc_statement
nodes.

From-SVN: r109665

gcc/fortran/ChangeLog
gcc/fortran/trans.c

index f82ff40..5f18c76 100644 (file)
@@ -1,3 +1,8 @@
+2006-01-13  Diego Novillo  <dnovillo@redhat.com>
+
+       * trans.c (gfc_add_expr_to_block): Do not fold tcc_statement
+       nodes.
+
 2006-01-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 
        * parse.c (next_fixed): Remove superfluous string concatenation.
index 5c74883..f1c0e02 100644 (file)
@@ -361,7 +361,8 @@ gfc_add_expr_to_block (stmtblock_t * block, tree expr)
   if (expr == NULL_TREE || IS_EMPTY_STMT (expr))
     return;
 
-  if (TREE_CODE (expr) != STATEMENT_LIST)
+  if (TREE_CODE (expr) != STATEMENT_LIST
+      && TREE_CODE_CLASS (TREE_CODE (expr)) != tcc_statement)
     expr = fold (expr);
 
   if (block->head)