+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * trans-array.c (gfc_free_ss_chain): Made non-static.
+ * trans-array.h (gfc_free_ss_chain): New prototype.
+ * trans-stmt.c (gfc_trans_where_2): Free ss chains.
+
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's
/* Free a gfc_ss chain. */
-static void
+void
gfc_free_ss_chain (gfc_ss * ss)
{
gfc_ss *next;
void gfc_add_ss_to_loop (gfc_loopinfo *, gfc_ss *);
/* Mark a SS chain as used in this loop. */
void gfc_mark_ss_chain_used (gfc_ss *, unsigned);
+/* Free a gfc_ss chain. */
+void gfc_free_ss_chain (gfc_ss *);
/* Calculates the lower bound and stride of array sections. */
void gfc_conv_ss_startstride (gfc_loopinfo *);
inner_size = compute_inner_temp_size (cblock->expr1, cblock->expr1,
&inner_size_body, &lss, &rss);
+ gfc_free_ss_chain (lss);
+ gfc_free_ss_chain (rss);
+
/* Calculate the total size of temporary needed. */
size = compute_overall_iter_number (nested_forall_info, inner_size,
&inner_size_body, block);