Go to file
Paul Thomas 30f9cd05c6 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
2007-07-24 19:16:36 +00:00
INSTALL
boehm-gc Regenerate aclocal.m4 in boehm-gc, libffi, libgfortran, libgomp, 2007-07-05 10:54:10 -07:00
config tls.m4 (GCC_CHECK_CC_TLS): New. 2007-07-06 07:00:46 -07:00
contrib Correct file path in last entry 2007-07-05 00:34:53 +00:00
fixincludes re PR target/32641 (C99 fpclassify, isinf, isfinite, isnormal may raise FP exceptions) 2007-07-18 20:22:32 +00:00
gcc re PR fortran/31205 (aliased operator assignment produces wrong result) 2007-07-24 19:16:36 +00:00
gnattools configure.ac: Update TOOLS_TARGET_PAIRS configuration to match gcc/ada/Makefile.in. 2007-06-06 15:18:52 +02:00
include xtensa-config.h (XCHAL_HAVE_THREADPTR): New. 2007-07-18 18:51:21 +00:00
intl
libada * Makefile.in: Add dummy install-pdf target. 2007-03-01 16:05:13 -08:00
libcpp traditional.c (_cpp_scan_out_logical_line): Initialize fmacro.args... 2007-07-04 12:08:44 +02:00
libdecnumber configure.ac: Add AC_CANONICAL_TARGET. 2007-06-18 07:32:14 -07:00
libffi configure.ac (i?86-*-solaris2.1[0-9]): Set TARGET to X86_64. 2007-07-16 17:05:41 +00:00
libgcc configure.ac (set_have_cc_tls): Add a missing =. 2007-07-06 07:53:06 -07:00
libgfortran ChangeLog: Correct entry. 2007-07-24 14:58:20 +02:00
libgomp re PR fortran/32550 (openmp: COPYPRIVATE of pointer variables fails) 2007-07-12 14:16:54 +02:00
libiberty argv.c (writeargv): Fix typo in inline documentation. 2007-07-23 13:29:17 -04:00
libjava configure.ac (mips-sgi-irix6*): Override SYSTEMSPEC. 2007-07-23 12:51:36 +00:00
libmudflap Regenerate aclocal.m4 in boehm-gc, libffi, libgfortran, libgomp, 2007-07-05 10:54:10 -07:00
libobjc Regenerate aclocal.m4 in boehm-gc, libffi, libgfortran, libgomp, 2007-07-05 10:54:10 -07:00
libssp Regenerate aclocal.m4 in boehm-gc, libffi, libgfortran, libgomp, 2007-07-05 10:54:10 -07:00
libstdc++-v3 re PR bootstrap/3456 (bootstrapping gcc-3.0 with threadmodel=posix fails on IRIX64 6.5) 2007-07-16 17:21:10 +00:00
maintainer-scripts update_web_docs_svn: Use -o with makeinfo, texi2dvi and texi2pdf commands. 2007-07-06 17:33:38 +01:00
zlib Regenerate aclocal.m4 in boehm-gc, libffi, libgfortran, libgomp, 2007-07-05 10:54:10 -07:00
ABOUT-NLS
COPYING
COPYING.LIB
COPYING3 COPYING_v3: New file. 2007-07-17 08:37:53 +00:00
COPYING3.LIB COPYING_v3: New file. 2007-07-17 08:37:53 +00:00
ChangeLog COPYING_v3: New file. 2007-07-17 08:37:53 +00:00
ChangeLog.tree-ssa
MAINTAINERS MAINTAINERS (S/390 port maintainer): Remove my co-maintainer tag. 2007-07-16 08:11:23 +00:00
Makefile.def Makefile.def: Add windmc tool to build. 2007-07-02 08:19:12 +00:00
Makefile.in Makefile.tpl (BUILD_EXPORTS): Escape the newline at the end of the WINDRES export. 2007-07-11 08:29:47 +00:00
Makefile.tpl Makefile.tpl (BUILD_EXPORTS): Escape the newline at the end of the WINDRES export. 2007-07-11 08:29:47 +00:00
README
README.SCO
compile
config-ml.in * config-ml.in: Pass ${ml_config_env} to configure calls. 2007-04-14 19:48:36 +00:00
config.guess * config.sub, config.guess: Update from upstream sources. 2007-06-07 09:23:20 +10:00
config.rpath
config.sub * config.sub, config.guess: Update from upstream sources. 2007-06-07 09:23:20 +10:00
configure configure.ac: Rewrite 'configure --help' strings to look nicer. 2007-07-03 09:06:26 +02:00
configure.ac configure.ac: Rewrite 'configure --help' strings to look nicer. 2007-07-03 09:06:26 +02:00
depcomp
install-sh
libtool-ldflags
libtool.m4 libtool.m4 (LT_CMD_MAX_LEN): Try using getconf to set lt_cv_sys_max_cmd_len. 2007-06-01 11:32:07 +00:00
ltgcc.m4 [multiple changes] 2007-05-31 06:40:42 +00:00
ltmain.sh ltmain.sh: Fix Darwin verstring, remove ${wl}. 2007-05-25 21:26:27 +02:00
ltoptions.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltsugar.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
ltversion.m4 ltmain.sh: Update from ToT Libtool. 2007-05-24 16:37:27 +00:00
lt~obsolete.m4 lt~obsolete.m4: New. 2007-07-05 10:36:59 -07:00
missing
mkdep
mkinstalldirs
move-if-change
symlink-tree
ylwrap

README

This directory contains the GNU Compiler Collection (GCC).

The GNU Compiler Collection is free software.  See the file COPYING
for copying permission.  The manuals, and some of the runtime
libraries, are under different terms; see the individual source files
for details.

The directory INSTALL contains copies of the installation information
as HTML and plain text.  The source of this information is
gcc/doc/install.texi.  The installation information includes details
of what is included in the GCC sources and what files GCC installs.

See the file gcc/doc/gcc.texi (together with other files that it
includes) for usage and porting information.  An online readable
version of the manual is in the files gcc/doc/gcc.info*.

See http://gcc.gnu.org/bugs.html for how to report bugs usefully.