fix DO WHILE (compile/19990502-1.f)
authorCraig Burley <craig@jcb-sc.com>
Sun, 2 May 1999 14:04:25 +0000 (14:04 +0000)
committerCraig Burley <burley@gcc.gnu.org>
Sun, 2 May 1999 14:04:25 +0000 (10:04 -0400)
From-SVN: r26727

gcc/f/ChangeLog
gcc/f/ste.c

index 885051abcaca65718a9f65f95e711b20f5b1bdab..7dff3adc23d90992efe87303e5394141b4ce6a0b 100644 (file)
@@ -1,3 +1,9 @@
+Sun May  2 16:53:01 1999  Craig Burley  <craig@jcb-sc.com>
+
+       Fix compile/19990502-1.f:
+       * ste.c (ffeste_R819B): Don't overwrite tree for temp
+       variable when expanding the assignment into it.
+
 Sun Apr 25 20:55:10 1999  Craig Burley  <craig@jcb-sc.com>
 
        Fix 19990325-0.f and 19990325-1.f:
index 2b018555b1e77880ffc14480c03134990faac6cf..dbe48ddea4103f57130a91aa077ea050d87bb0f3 100644 (file)
@@ -3097,6 +3097,7 @@ ffeste_R819B (ffestw block, ffelab label UNUSED, ffebld expr)
     if (expr)
       {
        struct nesting *loop;
+       tree mod;
 
        result = ffecom_make_tempvar ("dowhile", integer_type_node,
                                      FFETARGET_charactersizeNONE, -1);
@@ -3108,10 +3109,10 @@ ffeste_R819B (ffestw block, ffelab label UNUSED, ffebld expr)
 
        ffecom_prepare_end ();
 
-       result = ffecom_modify (void_type_node,
-                               result,
-                               ffecom_truth_value (ffecom_expr (expr)));
-       expand_expr_stmt (result);
+       mod = ffecom_modify (void_type_node,
+                            result,
+                            ffecom_truth_value (ffecom_expr (expr)));
+       expand_expr_stmt (mod);
 
        ffeste_end_stmt_ ();