Passing TREE_TYPE() to a Boolean work in C++, but fails in C. Besides, passing a "true" makes more sense.

Committed (Rev. ) as obvious.

Tobias
Index: gcc/fortran/trans-expr.c
===================================================================
--- gcc/fortran/trans-expr.c	(Revision 189738)
+++ gcc/fortran/trans-expr.c	(Arbeitskopie)
@@ -307,8 +307,7 @@
 	  gfc_conv_expr_descriptor (parmse, e, ss);
 
 	  if (e->rank != class_ts.u.derived->components->as->rank)
-	    class_array_data_assign (&parmse->pre, ctree, parmse->expr,
-				     TREE_TYPE (parmse->expr));
+	    class_array_data_assign (&parmse->pre, ctree, parmse->expr, true);
 	  else
 	    gfc_add_modify (&parmse->pre, ctree, parmse->expr);
 	}
Index: gcc/fortran/ChangeLog
===================================================================
--- gcc/fortran/ChangeLog	(Revision 189738)
+++ gcc/fortran/ChangeLog	(Arbeitskopie)
@@ -1,3 +1,8 @@
+2012-07-21  Tobias Burnus  <bur...@net-b.de>
+
+	* trans-expr.c (gfc_conv_derived_to_class): Fix argument passed
+	to class_array_data_assign.
+
 2012-07-20  Tobias Burnus  <bur...@net-b.de>
 
 	* decl.c (gfc_verify_c_interop_param): Allow assumed-shape

Reply via email to