04814daddf
2005-11-14 Gary Dismukes <dismukes@adacore.com> Ed Schonberg <schonberg@adacore.com> Gary Dismukes <dismukes@adacore.com> Thomas Quinot <quinot@adacore.com> * sem_ch12.ads, sem_ch12.adb (Map_Entities): Exclude entities whose names are internal, because they will not have a corresponding partner in the actual package. (Analyze_Formal_Package): Move the setting of the formal package spec's Generic_Parent field so that it occurs prior to analyzing the package, to allow proper operation of Install_Parent_Private_Declarations. (Analyze_Package_Instantiation): Set the instantiated package entity's Package_Instantiation field. (Get_Package_Instantiation_Node): Move declaration to package spec. Retrieve the N_Package_Instantiation node when the Package_Instantiation field is present. (Check_Generic_Child_Unit): Within an inlined call, the only possible instantiation is Unchecked_Conversion, for which no parents are needed. (Inline_Instance_Body): Deinstall and record the use_clauses for all parent scopes of a scope being removed prior to inlining an instance body. (Analyze_Package_Instantiation): Do not perform front-end inlining when the current context is itself an instance within a non-instance child unit, to prevent scope stack errors. (Save_References): If the node is an aggregate that is an actual in a call, rewrite as a qualified expression to preserve some type information, to resolve possible ambiguities in the instance. (Instance_Parent_Unit): New global variable to record the ultimate parent unit associated with a generic child unit instance (associated with the existing Parent_Unit_Visible flag). (type Instance_Env): New component Instance_Parent_Unit for stacking parents recorded in the global Instance_Parent_Unit. (Init_Env): Save value of Instance_Parent_Unit in the Instance_Env stack. (Install_Spec): Save the parent unit entity in Instance_Parent_Unit when it's not a top-level unit, and only do this if Instance_Parent_Unit is not already set. Replace test of Is_Child_Unit with test of parent's scope against package Standard. Add comments and a ??? comment. (Remove_Parent): Revise condition for resetting Is_Immediately_Visible on a child instance parent to test that the parent equals Instance_Parent rather than simply checking that the unit is not a child unit. (Restore_Env): Restore value of Instance_Parent_Unit from Instance_Env. (Validate_Derived_Interface_Type_Instance): Verify that all ancestors of a formal interface are ancestors of the corresponding actual. (Validate_Formal_Interface_Type): Additional legality checks. (Analyze_Formal_Derived_Interface_Type): New procedure to handle formal interface types with ancestors. (Analyze_Formal_Package): If formal is a renaming, use renamed entity to diagnose attempts to use generic within its own declaration. From-SVN: r106999 |
||
---|---|---|
boehm-gc | ||
config | ||
contrib | ||
fastjar | ||
fixincludes | ||
gcc | ||
gnattools | ||
include | ||
INSTALL | ||
intl | ||
libada | ||
libcpp | ||
libffi | ||
libgfortran | ||
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.in | ||
COPYING | ||
COPYING.LIB | ||
depcomp | ||
install-sh | ||
libtool.m4 | ||
ltcf-c.sh | ||
ltcf-cxx.sh | ||
ltcf-gcj.sh | ||
ltconfig | ||
ltmain.sh | ||
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.