86cde7b147
2007-08-14 Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> Javier Miranda <miranda@adacore.com> * exp_util.ads, exp_util.adb: This patch replaces a number of occurrences of explicit tests for N_Null with calls to Known_Null. This improves tracking of null values, since Known_Null also catches null constants, and variables currently known to be null, so we get better tracking. (Ensure_Defined): create an itype reference only in the scope of the itype. (Side_Effect_Free): A selected component of an access type that denotes a component with a rep clause must be treated as not side-effect free, because if it is part of a linked structure its value may be affected by a renaming. (Expand_Subtype_From_Expr): For limited objects initialized with build in place function calls, do nothing; otherwise we prematurely introduce an N_Reference node in the expression initializing the object, which breaks the circuitry that detects and adds the additional arguments to the called function. Bug found working in the new patch for statically allocated dispatch tables. (Is_Library_Level_Tagged_Type): New subprogram. (Remove_Side_Effects): If the expression of an elementary type is an operator treat as a function call. (Make_Literal_Range): If the index type of the array is not integer, use attributes properly to compute the constraint on the resulting aggregate which is a string. * freeze.ads, freeze.adb (Freeze_Entity): If the entity is a class-wide type whose base type is an incomplete private type, leave class-wide type unfrozen so that freeze nodes can be generated properly at a later point. (Freeze_Entity, array case): Handle case of pragma Pack and component size attributre clause for same array. From-SVN: r127419 |
||
---|---|---|
boehm-gc | ||
config | ||
contrib | ||
fixincludes | ||
gcc | ||
gnattools | ||
include | ||
INSTALL | ||
intl | ||
libada | ||
libcpp | ||
libdecnumber | ||
libffi | ||
libgcc | ||
libgfortran | ||
libgomp | ||
libiberty | ||
libjava | ||
libmudflap | ||
libobjc | ||
libssp | ||
libstdc++-v3 | ||
maintainer-scripts | ||
zlib | ||
ABOUT-NLS | ||
ChangeLog | ||
ChangeLog.tree-ssa | ||
compile | ||
config-ml.in | ||
config.guess | ||
config.rpath | ||
config.sub | ||
configure | ||
configure.ac | ||
COPYING | ||
COPYING3 | ||
COPYING3.LIB | ||
COPYING.LIB | ||
depcomp | ||
install-sh | ||
libtool-ldflags | ||
libtool.m4 | ||
lt~obsolete.m4 | ||
ltgcc.m4 | ||
ltmain.sh | ||
ltoptions.m4 | ||
ltsugar.m4 | ||
ltversion.m4 | ||
MAINTAINERS | ||
Makefile.def | ||
Makefile.in | ||
Makefile.tpl | ||
missing | ||
mkdep | ||
mkinstalldirs | ||
move-if-change | ||
README | ||
README.SCO | ||
symlink-tree | ||
ylwrap |
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.