ste.c (ffeste_R838): Handle ERROR_MARK.
authorBud Davis <bdavis9659@comcast.net>
Sun, 1 Jun 2003 15:45:05 +0000 (15:45 +0000)
committerToon Moene <toon@gcc.gnu.org>
Sun, 1 Jun 2003 15:45:05 +0000 (15:45 +0000)
2003-06-01  Bud Davis  <bdavis9659@comcast.net>

* ste.c (ffeste_R838): Handle ERROR_MARK.
(ffeste_R839): Ditto.

From-SVN: r67295

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

index 624b607a2cdbb12752b8e2765ebff1c5eb62da46..3b0f188998db04d1e424327b461bd88e9c4fd1e7 100644 (file)
@@ -1,3 +1,8 @@
+2003-06-01  Bud Davis  <bdavis9659@comcast.net>
+
+       * ste.c (ffeste_R838): Handle ERROR_MARK.
+       (ffeste_R839): Ditto.
+
 2003-06-01  Andreas Jaeger  <aj@suse.de>
 
        * lex.c (ffelex_file_fixed): Remove usage of
index f27c93ec2969d983a1cac31d03c1290f3bcca32c..b0d464af81f5bc790621973c794afd5ae37441fc 100644 (file)
@@ -2950,16 +2950,19 @@ ffeste_R838 (ffelab label, ffebld target)
       TREE_CONSTANT (label_tree) = 1;
 
       target_tree = ffecom_expr_assign_w (target);
-      if (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (target_tree)))
-         < GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (label_tree))))
-       error ("ASSIGN to variable that is too small");
+      if (TREE_CODE (target_tree) != ERROR_MARK)
+      {
+        if (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (target_tree)))
+            < GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (label_tree))))
+         error ("ASSIGN to variable that is too small");
 
-      label_tree = convert (TREE_TYPE (target_tree), label_tree);
+        label_tree = convert (TREE_TYPE (target_tree), label_tree);
 
-      expr_tree = ffecom_modify (void_type_node,
+        expr_tree = ffecom_modify (void_type_node,
                                 target_tree,
                                 label_tree);
-      expand_expr_stmt (expr_tree);
+        expand_expr_stmt (expr_tree);
+      }
     }
 }
 
@@ -2978,11 +2981,15 @@ ffeste_R839 (ffebld target)
      seen here should never require use of temporaries.  */
 
   t = ffecom_expr_assign (target);
-  if (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (t)))
-      < GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (null_pointer_node))))
-    error ("ASSIGNed GOTO target variable is too small");
 
-  expand_computed_goto (convert (TREE_TYPE (null_pointer_node), t));
+  if (TREE_CODE (t) != ERROR_MARK)
+  {
+       if (GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (t)))
+         < GET_MODE_SIZE (TYPE_MODE (TREE_TYPE (null_pointer_node))))
+       error ("ASSIGNed GOTO target variable is too small");
+
+       expand_computed_goto (convert (TREE_TYPE (null_pointer_node), t));
+  }
 }
 
 /* Arithmetic IF statement.  */