2013-04-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
	    Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/56872
	* frontend-passes.c (copy_walk_reduction_arg): Change argument type
	to gfc_constructor.  If it has an iterator, wrap the copy of its
	expression in an array constructor with that iterator.  Don't special
	case function expressions.
	(callback_reduction): Update caller.  Don't return early if there is
	an iterator.

2013-04-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
	    Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/56872
	* gfortran.dg/array_constructor_45.f90:  New test.
	* gfortran.dg/array_constructor_46.f90:  New test.
	* gfortran.dg/array_constructor_47.f90:  New test.
	* gfortran.dg/array_constructor_40.f90:  Adjust number of
	while loops.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198086 138bc75d-0d04-0410-961f-82ee72b054a4
2013-04-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/57000
	* tree-ssa-reassoc.c (pass_reassoc): Add TODO_update_ssa_only_virtuals.

	* gcc.dg/tree-ssa/reassoc-27.c: New testcase.


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