2007-04-20 Javier Miranda <miranda@adacore.com> Hristian Kirtchev <kirtchev@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Process_Full_View): Propagate the CPP_Class attribute to the full type declaration. (Analyze_Component_Declaration): Add local variable E to capture the initialization expression of the declaration. Replace the occurences of Expression (N) with E. (OK_For_Limited_Init_In_05): Allow initialization of class-wide limited interface object with a function call. (Array_Type_Declaration): If the declaration lacks subtype marks for indices, create a simple index list to prevent cascaded errors. (Is_Null_Extension): Ignore internal components created for secondary tags when checking whether a record extension is a null extension. (Check_Abstract_Interfaces): Add missing support for interface subtypes and generic formals. (Derived_Type_Declaration): Add missing support for interface subtypes and generic formals. (Analyze_Object_Declaration): If an initialization expression is present, traverse its subtree and mark all allocators as static coextensions. (Add_Interface_Tag_Component): When looking for components that may be secondary tags, ignore pragmas that can appear within a record declaration. (Check_Abstract_Overriding): an inherited function that dispatches on result does not need to be overriden if the controlling type is a null extension. (Mentions_T): Handle properly a 'class attribute in an anonymous access component declaration, when the prefix is an expanded name. (Inherit_Component): If the derivation is for a private extension, inherited components remain visible and their ekind should not be set to Void. (Find_Type_Of_Object): In the case of an access definition, always set Is_Local_Anonymous_Access. We were previously not marking the anonymous access type of a return object as a local anonymous type. (Make_Index): Use Ambiguous_Character to report ambiguity on a discrete range with character literal bounds. (Constrain_Array): Initialize the Packed_Array_Type field to Empty. (Access_Subprogram_Declaration): Indicate that the type declaration depends on an incomplete type only if the incomplete type is declared in an open scope. (Analyze_Subtype_Declaration): Handle properly subtypes of synchronized types that are tagged, and that may appear as generic actuals. (Access_Subprogram_Declaration): An anonymous access to subprogram can appear as an access discriminant in a private type declaration. (Add_Interface_Tag_Components): Complete decoration of the component containing the tag of a secondary dispatch table and the component containing the offset to the base of the object (this latter component is only generated when the parent type has discriminants --as documented in this routine). (Inherit_Components): Use the new decoration of the tag components to improve the condition that avoids inheriting the components associated with secondary tags of the parent. (Build_Discriminanted_Subtype): Indicate to the backend that the size of record types associated with dispatch tables is known at compile time. (Analyze_Subtype_Declaration): Propagate Is_Interface flag when needed. (Analyze_Interface_Declaration): Change setting of Is_Limited_Interface to include task, protected, and synchronized interfaces as limited interfaces. (Process_Discriminants): Remove the setting of Is_Local_Anonymous_Access on the type of (anonymous) access discriminants of nonlimited types. (Analyze_Interface_Type_Declaration): Complete the decoration of the class-wide entity it is is already present. This situation occurs if the limited-view has been previously built. (Enumeration_Type_Declaration): Initialize properly the Enum_Pos_To_Rep field. (Add_Interface_Tag_Components.Add_Tag): Set the value of the attribute Related_Interface. From-SVN: r125437
Name |
Last commit
|
Last update |
---|---|---|
INSTALL | Loading commit data... | |
boehm-gc | Loading commit data... | |
config | Loading commit data... | |
contrib | Loading commit data... | |
fixincludes | Loading commit data... | |
gcc | Loading commit data... | |
gnattools | Loading commit data... | |
include | Loading commit data... | |
intl | Loading commit data... | |
libada | Loading commit data... | |
libcpp | Loading commit data... | |
libdecnumber | Loading commit data... | |
libffi | Loading commit data... | |
libgcc | Loading commit data... | |
libgfortran | Loading commit data... | |
libgomp | Loading commit data... | |
libiberty | Loading commit data... | |
libjava | Loading commit data... | |
libmudflap | Loading commit data... | |
libobjc | Loading commit data... | |
libssp | Loading commit data... | |
libstdc++-v3 | Loading commit data... | |
maintainer-scripts | Loading commit data... | |
zlib | Loading commit data... | |
ABOUT-NLS | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING.LIB | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
MAINTAINERS | Loading commit data... | |
Makefile.def | Loading commit data... | |
Makefile.in | Loading commit data... | |
Makefile.tpl | Loading commit data... | |
README | Loading commit data... | |
README.SCO | Loading commit data... | |
compile | Loading commit data... | |
config-ml.in | Loading commit data... | |
config.guess | Loading commit data... | |
config.rpath | Loading commit data... | |
config.sub | Loading commit data... | |
configure | Loading commit data... | |
configure.ac | Loading commit data... | |
depcomp | Loading commit data... | |
install-sh | Loading commit data... | |
libtool-ldflags | Loading commit data... | |
libtool.m4 | Loading commit data... | |
ltgcc.m4 | Loading commit data... | |
ltmain.sh | Loading commit data... | |
ltoptions.m4 | Loading commit data... | |
ltsugar.m4 | Loading commit data... | |
ltversion.m4 | Loading commit data... | |
missing | Loading commit data... | |
mkdep | Loading commit data... | |
mkinstalldirs | Loading commit data... | |
move-if-change | Loading commit data... | |
symlink-tree | Loading commit data... | |
ylwrap | Loading commit data... |