[Patch, fortran] PR36932,3 - unnecessary temporaries

Paul Richard Thomas paul.richard.thomas@gmail.com
Sun Feb 14 15:11:00 GMT 2010


Dear All,

This patch has evolved sufficiently that I think it needs to be resubmitted:

(i) The symmetry between the arguments of check_data_pointer_types is
now assured by calling it twice with the arguments interchanged.
(ii) A possible component reference is checked first; if it is found,
checking of all the components is not done.
(iii) Joost is keeping us on our toes... The bit of the patch in
trans-array.c fixes the testcase in his comment #3 of PR36932.

Note comment #3 of PR36933 remains to be done.

Bootstraps and regtests on FC9/x86_64 - OK for trunk?

Cheers

Paul


2010-02-14  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/36932
	PR fortran/36933
	* dependency.c (gfc_check_argument_var_dependency): Use enum
	value instead of arithmetic vaue for 'elemental'.
	(check_data_pointer_types): New function.
	(gfc_check_dependency): Call check_data_pointer_types.
	* trans-array.c (gfc_conv_array_parameter): A contiguous array
	can be a dummy but it must not be assumed shape.

2010-02-14  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/36932
	PR fortran/36933
	* gfortran.dg/dependency_26.f90: New test.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: submit2.diff
Type: text/x-diff
Size: 6438 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100214/161d35a6/attachment.bin>


More information about the Gcc-patches mailing list