OSDN Git Service

2009-05-12 Steven G. Kargl <kargl@gcc.gnu.org>
authorkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 May 2009 16:17:59 +0000 (16:17 +0000)
committerkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 May 2009 16:17:59 +0000 (16:17 +0000)
* gfortran.h (gfc_code): Rename struct member label to label1.
* dump-parse-tree.c (show_code_node): Update symbol.
* trans-stmt.c (gfc_trans_label_assign, gfc_trans_goto,
gfc_trans_arithmetic_if)": Ditto.
* resolve.c (gfc_resolve_blocks, resolve_code): Ditto.
* match.c (match_arithmetic_if, gfc_match_if, gfc_reference_st_label,
gfc_match_assign, gfc_match_goto): Ditto.
* parse.c (parse_do_block): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147489 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/dump-parse-tree.c
gcc/fortran/gfortran.h
gcc/fortran/match.c
gcc/fortran/parse.c
gcc/fortran/resolve.c
gcc/fortran/trans-stmt.c

index 1ca8b68..51cfdbb 100644 (file)
@@ -1,3 +1,14 @@
+2009-05-13  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * gfortran.h (gfc_code): Rename struct member label to label1.
+       * dump-parse-tree.c (show_code_node): Update symbol.
+       * trans-stmt.c (gfc_trans_label_assign, gfc_trans_goto,
+       gfc_trans_arithmetic_if)": Ditto.
+       * resolve.c (gfc_resolve_blocks, resolve_code): Ditto.
+       * match.c (match_arithmetic_if, gfc_match_if, gfc_reference_st_label,
+       gfc_match_assign, gfc_match_goto): Ditto.
+       * parse.c (parse_do_block): Ditto.
+
 2009-05-13  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/34153
 2009-05-13  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/34153
index 51d76f0..8c8ad8d 100644 (file)
@@ -1174,7 +1174,7 @@ show_code_node (int level, gfc_code *c)
     case EXEC_LABEL_ASSIGN:
       fputs ("LABEL ASSIGN ", dumpfile);
       show_expr (c->expr);
     case EXEC_LABEL_ASSIGN:
       fputs ("LABEL ASSIGN ", dumpfile);
       show_expr (c->expr);
-      fprintf (dumpfile, " %d", c->label->value);
+      fprintf (dumpfile, " %d", c->label1->value);
       break;
 
     case EXEC_POINTER_ASSIGN:
       break;
 
     case EXEC_POINTER_ASSIGN:
@@ -1186,8 +1186,8 @@ show_code_node (int level, gfc_code *c)
 
     case EXEC_GOTO:
       fputs ("GOTO ", dumpfile);
 
     case EXEC_GOTO:
       fputs ("GOTO ", dumpfile);
-      if (c->label)
-       fprintf (dumpfile, "%d", c->label->value);
+      if (c->label1)
+       fprintf (dumpfile, "%d", c->label1->value);
       else
        {
          show_expr (c->expr);
       else
        {
          show_expr (c->expr);
@@ -1197,7 +1197,7 @@ show_code_node (int level, gfc_code *c)
              fputs (", (", dumpfile);
              for (; d; d = d ->block)
                {
              fputs (", (", dumpfile);
              for (; d; d = d ->block)
                {
-                 code_indent (level, d->label);
+                 code_indent (level, d->label1);
                  if (d->block != NULL)
                    fputc (',', dumpfile);
                  else
                  if (d->block != NULL)
                    fputc (',', dumpfile);
                  else
@@ -1260,7 +1260,7 @@ show_code_node (int level, gfc_code *c)
       fputs ("IF ", dumpfile);
       show_expr (c->expr);
       fprintf (dumpfile, " %d, %d, %d",
       fputs ("IF ", dumpfile);
       show_expr (c->expr);
       fprintf (dumpfile, " %d, %d, %d",
-                 c->label->value, c->label2->value, c->label3->value);
+                 c->label1->value, c->label2->value, c->label3->value);
       break;
 
     case EXEC_IF:
       break;
 
     case EXEC_IF:
@@ -1287,7 +1287,7 @@ show_code_node (int level, gfc_code *c)
          show_code (level + 1, d->next);
        }
 
          show_code (level + 1, d->next);
        }
 
-      code_indent (level, c->label);
+      code_indent (level, c->label1);
 
       fputs ("ENDIF", dumpfile);
       break;
 
       fputs ("ENDIF", dumpfile);
       break;
@@ -1317,7 +1317,7 @@ show_code_node (int level, gfc_code *c)
          show_code (level + 1, d->next);
        }
 
          show_code (level + 1, d->next);
        }
 
-      code_indent (level, c->label);
+      code_indent (level, c->label1);
       fputs ("END SELECT", dumpfile);
       break;
 
       fputs ("END SELECT", dumpfile);
       break;
 
@@ -1398,7 +1398,7 @@ show_code_node (int level, gfc_code *c)
 
       show_code (level + 1, c->block->next);
 
 
       show_code (level + 1, c->block->next);
 
-      code_indent (level, c->label);
+      code_indent (level, c->label1);
       fputs ("END DO", dumpfile);
       break;
 
       fputs ("END DO", dumpfile);
       break;
 
index 73b2178..97c9c1f 100644 (file)
@@ -1913,7 +1913,7 @@ typedef struct gfc_code
   struct gfc_code *block, *next;
   locus loc;
 
   struct gfc_code *block, *next;
   locus loc;
 
-  gfc_st_label *here, *label, *label2, *label3;
+  gfc_st_label *here, *label1, *label2, *label3;
   gfc_symtree *symtree;
   gfc_expr *expr, *expr2;
   /* A name isn't sufficient to identify a subroutine, we need the actual
   gfc_symtree *symtree;
   gfc_expr *expr, *expr2;
   /* A name isn't sufficient to identify a subroutine, we need the actual
index 6faedec..3a49ca1 100644 (file)
@@ -1389,7 +1389,7 @@ match_arithmetic_if (void)
 
   new_st.op = EXEC_ARITHMETIC_IF;
   new_st.expr = expr;
 
   new_st.op = EXEC_ARITHMETIC_IF;
   new_st.expr = expr;
-  new_st.label = l1;
+  new_st.label1 = l1;
   new_st.label2 = l2;
   new_st.label3 = l3;
 
   new_st.label2 = l2;
   new_st.label3 = l3;
 
@@ -1470,7 +1470,7 @@ gfc_match_if (gfc_statement *if_type)
 
       new_st.op = EXEC_ARITHMETIC_IF;
       new_st.expr = expr;
 
       new_st.op = EXEC_ARITHMETIC_IF;
       new_st.expr = expr;
-      new_st.label = l1;
+      new_st.label1 = l1;
       new_st.label2 = l2;
       new_st.label3 = l3;
 
       new_st.label2 = l2;
       new_st.label3 = l3;
 
@@ -1789,7 +1789,7 @@ done:
       && gfc_reference_st_label (label, ST_LABEL_TARGET) == FAILURE)
     goto cleanup;
 
       && gfc_reference_st_label (label, ST_LABEL_TARGET) == FAILURE)
     goto cleanup;
 
-  new_st.label = label;
+  new_st.label1 = label;
 
   if (new_st.op == EXEC_DO_WHILE)
     new_st.expr = iter.end;
 
   if (new_st.op == EXEC_DO_WHILE)
     new_st.expr = iter.end;
@@ -2033,7 +2033,7 @@ gfc_match_assign (void)
          expr->symtree->n.sym->attr.assign = 1;
 
          new_st.op = EXEC_LABEL_ASSIGN;
          expr->symtree->n.sym->attr.assign = 1;
 
          new_st.op = EXEC_LABEL_ASSIGN;
-         new_st.label = label;
+         new_st.label1 = label;
          new_st.expr = expr;
          return MATCH_YES;
        }
          new_st.expr = expr;
          return MATCH_YES;
        }
@@ -2063,7 +2063,7 @@ gfc_match_goto (void)
        return MATCH_ERROR;
 
       new_st.op = EXEC_GOTO;
        return MATCH_ERROR;
 
       new_st.op = EXEC_GOTO;
-      new_st.label = label;
+      new_st.label1 = label;
       return MATCH_YES;
     }
 
       return MATCH_YES;
     }
 
@@ -2108,7 +2108,7 @@ gfc_match_goto (void)
              tail = tail->block;
            }
 
              tail = tail->block;
            }
 
-         tail->label = label;
+         tail->label1 = label;
          tail->op = EXEC_GOTO;
        }
       while (gfc_match_char (',') == MATCH_YES);
          tail->op = EXEC_GOTO;
        }
       while (gfc_match_char (',') == MATCH_YES);
@@ -2161,7 +2161,7 @@ gfc_match_goto (void)
 
       tail->next = gfc_get_code ();
       tail->next->op = EXEC_GOTO;
 
       tail->next = gfc_get_code ();
       tail->next->op = EXEC_GOTO;
-      tail->next->label = label;
+      tail->next->label1 = label;
     }
   while (gfc_match_char (',') == MATCH_YES);
 
     }
   while (gfc_match_char (',') == MATCH_YES);
 
@@ -2782,7 +2782,7 @@ gfc_match_call (void)
 
          c->next = gfc_get_code ();
          c->next->op = EXEC_GOTO;
 
          c->next = gfc_get_code ();
          c->next->op = EXEC_GOTO;
-         c->next->label = a->label;
+         c->next->label1 = a->label;
        }
     }
 
        }
     }
 
index 3c54c46..3dec173 100644 (file)
@@ -2867,7 +2867,7 @@ parse_do_block (void)
   gfc_state_data s;
   gfc_symtree *stree;
 
   gfc_state_data s;
   gfc_symtree *stree;
 
-  s.ext.end_do_label = new_st.label;
+  s.ext.end_do_label = new_st.label1;
 
   if (new_st.ext.iterator != NULL)
     stree = new_st.ext.iterator->var->symtree;
 
   if (new_st.ext.iterator != NULL)
     stree = new_st.ext.iterator->var->symtree;
index 43044ef..028235b 100644 (file)
@@ -6645,7 +6645,7 @@ gfc_resolve_blocks (gfc_code *b, gfc_namespace *ns)
          break;
 
        case EXEC_GOTO:
          break;
 
        case EXEC_GOTO:
-         resolve_branch (b->label, b);
+         resolve_branch (b->label1, b);
          break;
 
        case EXEC_SELECT:
          break;
 
        case EXEC_SELECT:
@@ -6927,7 +6927,7 @@ resolve_code (gfc_code *code, gfc_namespace *ns)
                           &code->expr->where);
            }
          else
                           &code->expr->where);
            }
          else
-           resolve_branch (code->label, code);
+           resolve_branch (code->label1, code);
          break;
 
        case EXEC_RETURN:
          break;
 
        case EXEC_RETURN:
@@ -6951,9 +6951,9 @@ resolve_code (gfc_code *code, gfc_namespace *ns)
          break;
 
        case EXEC_LABEL_ASSIGN:
          break;
 
        case EXEC_LABEL_ASSIGN:
-         if (code->label->defined == ST_LABEL_UNKNOWN)
+         if (code->label1->defined == ST_LABEL_UNKNOWN)
            gfc_error ("Label %d referenced at %L is never defined",
            gfc_error ("Label %d referenced at %L is never defined",
-                      code->label->value, &code->label->where);
+                      code->label1->value, &code->label1->where);
          if (t == SUCCESS
              && (code->expr->expr_type != EXPR_VARIABLE
                  || code->expr->symtree->n.sym->ts.type != BT_INTEGER
          if (t == SUCCESS
              && (code->expr->expr_type != EXPR_VARIABLE
                  || code->expr->symtree->n.sym->ts.type != BT_INTEGER
@@ -6978,7 +6978,7 @@ resolve_code (gfc_code *code, gfc_namespace *ns)
            gfc_error ("Arithmetic IF statement at %L requires a numeric "
                       "expression", &code->expr->where);
 
            gfc_error ("Arithmetic IF statement at %L requires a numeric "
                       "expression", &code->expr->where);
 
-         resolve_branch (code->label, code);
+         resolve_branch (code->label1, code);
          resolve_branch (code->label2, code);
          resolve_branch (code->label3, code);
          break;
          resolve_branch (code->label2, code);
          resolve_branch (code->label3, code);
          break;
index 9bad071..1f05738 100644 (file)
@@ -109,16 +109,16 @@ gfc_trans_label_assign (gfc_code * code)
   len = GFC_DECL_STRING_LEN (se.expr);
   addr = GFC_DECL_ASSIGN_ADDR (se.expr);
 
   len = GFC_DECL_STRING_LEN (se.expr);
   addr = GFC_DECL_ASSIGN_ADDR (se.expr);
 
-  label_tree = gfc_get_label_decl (code->label);
+  label_tree = gfc_get_label_decl (code->label1);
 
 
-  if (code->label->defined == ST_LABEL_TARGET)
+  if (code->label1->defined == ST_LABEL_TARGET)
     {
       label_tree = gfc_build_addr_expr (pvoid_type_node, label_tree);
       len_tree = integer_minus_one_node;
     }
   else
     {
     {
       label_tree = gfc_build_addr_expr (pvoid_type_node, label_tree);
       len_tree = integer_minus_one_node;
     }
   else
     {
-      gfc_expr *format = code->label->format;
+      gfc_expr *format = code->label1->format;
 
       label_len = format->value.character.length;
       len_tree = build_int_cst (NULL_TREE, label_len);
 
       label_len = format->value.character.length;
       len_tree = build_int_cst (NULL_TREE, label_len);
@@ -144,8 +144,8 @@ gfc_trans_goto (gfc_code * code)
   tree tmp;
   gfc_se se;
 
   tree tmp;
   gfc_se se;
 
-  if (code->label != NULL)
-    return build1_v (GOTO_EXPR, gfc_get_label_decl (code->label));
+  if (code->label1 != NULL)
+    return build1_v (GOTO_EXPR, gfc_get_label_decl (code->label1));
 
   /* ASSIGNED GOTO.  */
   gfc_init_se (&se, NULL);
 
   /* ASSIGNED GOTO.  */
   gfc_init_se (&se, NULL);
@@ -170,7 +170,7 @@ gfc_trans_goto (gfc_code * code)
   /* Check the label list.  */
   do
     {
   /* Check the label list.  */
   do
     {
-      target = gfc_get_label_decl (code->label);
+      target = gfc_get_label_decl (code->label1);
       tmp = gfc_build_addr_expr (pvoid_type_node, target);
       tmp = fold_build2 (EQ_EXPR, boolean_type_node, tmp, assigned_goto);
       tmp = build3_v (COND_EXPR, tmp,
       tmp = gfc_build_addr_expr (pvoid_type_node, target);
       tmp = fold_build2 (EQ_EXPR, boolean_type_node, tmp, assigned_goto);
       tmp = build3_v (COND_EXPR, tmp,
@@ -719,14 +719,14 @@ gfc_trans_arithmetic_if (gfc_code * code)
   /* Build something to compare with.  */
   zero = gfc_build_const (TREE_TYPE (se.expr), integer_zero_node);
 
   /* Build something to compare with.  */
   zero = gfc_build_const (TREE_TYPE (se.expr), integer_zero_node);
 
-  if (code->label->value != code->label2->value)
+  if (code->label1->value != code->label2->value)
     {
       /* If (cond < 0) take branch1 else take branch2.
          First build jumps to the COND .LT. 0 and the COND .EQ. 0 cases.  */
     {
       /* If (cond < 0) take branch1 else take branch2.
          First build jumps to the COND .LT. 0 and the COND .EQ. 0 cases.  */
-      branch1 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label));
+      branch1 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label1));
       branch2 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label2));
 
       branch2 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label2));
 
-      if (code->label->value != code->label3->value)
+      if (code->label1->value != code->label3->value)
         tmp = fold_build2 (LT_EXPR, boolean_type_node, se.expr, zero);
       else
         tmp = fold_build2 (NE_EXPR, boolean_type_node, se.expr, zero);
         tmp = fold_build2 (LT_EXPR, boolean_type_node, se.expr, zero);
       else
         tmp = fold_build2 (NE_EXPR, boolean_type_node, se.expr, zero);
@@ -734,9 +734,9 @@ gfc_trans_arithmetic_if (gfc_code * code)
       branch1 = fold_build3 (COND_EXPR, void_type_node, tmp, branch1, branch2);
     }
   else
       branch1 = fold_build3 (COND_EXPR, void_type_node, tmp, branch1, branch2);
     }
   else
-    branch1 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label));
+    branch1 = build1_v (GOTO_EXPR, gfc_get_label_decl (code->label1));
 
 
-  if (code->label->value != code->label3->value
+  if (code->label1->value != code->label3->value
       && code->label2->value != code->label3->value)
     {
       /* if (cond <= 0) take branch1 else take branch2.  */
       && code->label2->value != code->label3->value)
     {
       /* if (cond <= 0) take branch1 else take branch2.  */