diff mbox

[fortran,27/66] inline sum and product: Update core structs: Move temp struct.

Message ID 20111027233121.18581.75361@gimli.local
State New
Headers show

Commit Message

Mikael Morin Oct. 27, 2011, 11:31 p.m. UTC
This moves data::temp field from gfc_ss to gfc_ss_info.
OK?
2011-10-19  Mikael Morin  <mikael@gcc.gnu.org>

	* trans.h (struct gfc_ss, struct gfc_ss_info): Move member struct
	gfc_ss::data::temp into gfc_ss_info::data.
	* trans-array.c (gfc_get_temp_ss, gfc_conv_loop_setup): Update reference
	chains.
diff mbox

Patch

diff --git a/trans-array.c b/trans-array.c
index eef0f09..173e52b 100644
--- a/trans-array.c
+++ b/trans-array.c
@@ -558,11 +558,11 @@  gfc_get_temp_ss (tree type, tree string_length, int dimen)
   ss_info = gfc_get_ss_info ();
   ss_info->type = GFC_SS_TEMP;
   ss_info->string_length = string_length;
+  ss_info->data.temp.type = type;
 
   ss = gfc_get_ss ();
   ss->info = ss_info;
   ss->next = gfc_ss_terminator;
-  ss->data.temp.type = type;
   ss->dimen = dimen;
   for (i = 0; i < ss->dimen; i++)
     ss->dim[i] = i;
@@ -4127,12 +4127,12 @@  gfc_conv_loop_setup (gfc_loopinfo * loop, locus * where)
 
       /* Make absolutely sure that this is a complete type.  */
       if (tmp_ss_info->string_length)
-	loop->temp_ss->data.temp.type
+	tmp_ss_info->data.temp.type
 		= gfc_get_character_type_len_for_eltype
-			(TREE_TYPE (loop->temp_ss->data.temp.type),
+			(TREE_TYPE (tmp_ss_info->data.temp.type),
 			 tmp_ss_info->string_length);
 
-      tmp = loop->temp_ss->data.temp.type;
+      tmp = tmp_ss_info->data.temp.type;
       memset (&loop->temp_ss->data.info, 0, sizeof (gfc_array_info));
       tmp_ss_info->type = GFC_SS_SECTION;
 
diff --git a/trans.h b/trans.h
index 567e5a3..60708e9 100644
--- a/trans.h
+++ b/trans.h
@@ -197,6 +197,13 @@  typedef struct gfc_ss_info
       tree value;
     }
     scalar;
+
+    /* GFC_SS_TEMP.  */
+    struct
+    {
+      tree type;
+    }
+    temp;
   }
   data;
 }
@@ -219,12 +226,6 @@  typedef struct gfc_ss
 
   union
   {
-    /* GFC_SS_TEMP.  */
-    struct
-    {
-      tree type;
-    }
-    temp;
     /* All other types.  */
     gfc_array_info info;
   }