diff options
| author | Paul Thomas <pault@gcc.gnu.org> | 2007-07-24 19:16:36 +0000 | 
|---|---|---|
| committer | Paul Thomas <pault@gcc.gnu.org> | 2007-07-24 19:16:36 +0000 | 
| commit | 30f9cd05c6a101d6ec4c9e4487e6393195ed0c45 (patch) | |
| tree | b9d7a81ed4436258359f8fd5b4bfab4cd86b6c24 /libjava/java/sql/SQLOutput.h | |
| parent | 08113c7398f734fdabf27af9d143af83ebde3767 (diff) | |
| download | gcc-30f9cd05c6a101d6ec4c9e4487e6393195ed0c45.zip gcc-30f9cd05c6a101d6ec4c9e4487e6393195ed0c45.tar.gz gcc-30f9cd05c6a101d6ec4c9e4487e6393195ed0c45.tar.bz2 | |
re PR fortran/31205 (aliased operator assignment produces wrong result)
2007-07-24 Paul Thomas <pault@gcc.gnu.org>
	PR fortran/31205
	PR fortran/32842
	* trans-expr.c (gfc_conv_function_call): Remove the default
	initialization of intent(out) derived types.
	* symbol.c (gfc_lval_expr_from_sym): New function.
	* matchexp.c (gfc_get_parentheses): Return argument, if it is
	character and posseses a ref.
	* gfortran.h : Add prototype for gfc_lval_expr_from_sym.
	* resolve.c (has_default_initializer): Move higher up in file.
	(resolve_code): On detecting an interface assignment, check
	if the rhs and the lhs are the same symbol.  If this is so,
	enclose the rhs in parenetheses to generate a temporary and
	prevent any possible aliasing.
	(apply_default_init): Remove code making the lval and call
	gfc_lval_expr_from_sym instead.
	(resolve_operator): Give a parentheses expression a type-
	spec if it has no type.
	* trans-decl.c (gfc_trans_deferred_vars): Apply the a default
	initializer, if any, to an intent(out) derived type, using
	gfc_lval_expr_from_sym and gfc_trans_assignment.  Check if
	the dummy is present.
2007-07-24 Paul Thomas <pault@gcc.gnu.org>
	PR fortran/31205
	* gfortran.dg/alloc_comp_basics_1.f90 : Restore number of
	"deallocates" to 24, since patch has code rid of much spurious
	code.
	* gfortran.dg/interface_assignment_1.f90 : New test.
	PR fortran/32842
	* gfortran.dg/interface_assignment_2.f90 : New test.
From-SVN: r126886
Diffstat (limited to 'libjava/java/sql/SQLOutput.h')
0 files changed, 0 insertions, 0 deletions
