This removes the gfc_ss::data::temp::codimen field and the code depending on
it.

OK?

2011-09-14  Mikael Morin  <mikael.mo...@sfr.fr>

        * trans.h (gfc_ss): Remove data.temp.codimen field.
        * trans-array.c (gfc_conv_resolve_dependencies,
        gfc_conv_expr_descriptor): Don't set temp's codimen field.
diff --git a/trans-array.c b/trans-array.c
index b132bf6..9d4ef5a 100644
--- a/trans-array.c
+++ b/trans-array.c
@@ -3861,7 +3861,6 @@ temporary:
 	base_type = gfc_get_element_type (base_type);
       loop->temp_ss = gfc_get_temp_ss (base_type, dest->string_length,
 				       loop->dimen);
-      loop->temp_ss->data.temp.codimen = loop->codimen;
       gfc_add_ss_to_loop (loop, loop->temp_ss);
     }
   else
@@ -5920,7 +5919,6 @@ gfc_conv_expr_descriptor (gfc_se * se, gfc_expr * expr, gfc_ss * ss)
 
       se->string_length = loop.temp_ss->string_length;
       gcc_assert (loop.temp_ss->data.temp.dimen == loop.dimen);
-      loop.temp_ss->data.temp.codimen = loop.codimen;
       gfc_add_ss_to_loop (&loop, loop.temp_ss);
     }
 
diff --git a/trans.h b/trans.h
index 6157a88..3404123 100644
--- a/trans.h
+++ b/trans.h
@@ -212,7 +212,7 @@ typedef struct gfc_ss
     {
       /* The rank of the temporary.  May be less than the rank of the
          assigned expression.  */
-      int dimen, codimen;
+      int dimen;
       tree type;
     }
     temp;

Reply via email to