2007-04-20 Hristian Kirtchev <kirtchev@adacore.com> Robert Dewar <dewar@adacore.com> Ed Schonberg <schonberg@adacore.com> Gary Dismukes <dismukes@adacore.com> * exp_ch2.adb: Remove "with" and "use" clauses for Namet and Snames. Add "with" and "use" clauses for Sem_Attr. (Expand_Current_Value): Do not replace occurences of attribute references where the prefix must be a simple name. * sem_attr.ads, sem_attr.adb: Remove "with" and "use" clauses for Namet. Add new arrays Attribute_Name_Modifies_Prefix and Attribute_Requires_Simple_Name_Prefix. (Name_Modifies_Prefix): Body of new function. (Requires_Simple_Name_Prefix): Body of new function. (Resolve_Attribute, case Access): Improve error message for case of mismatched conventions. (Analyze_Attribute, case 'Tag): The prefix the attribute cannot be of an incomplete type. (Analyze_Attribute, case 'Access): If the type of the prefix is a constrained subtype for a nominal unconstrained type, use its base type to check for conformance with the context. (Resolve_Attribute): Remove test of the access type being associated with a return statement from condition for performing accessibility checks on access attributes, since this case is now captured by Is_Local_Anonymous_Access. (Analyze_Access_Attribute): Set Address_Taken on entity (Analyze_Attribute, case Address): Set Address_Taken on entity (OK_Self_Reference): Traverse tree to locate enclosing aggregate when validating an access attribute whose prefix is a current instance. (Resolve_Attribute): In case of attributes 'Code_Address and 'Address applied to dispatching operations, if freezing is required then we set the attribute Has_Delayed_Freeze in the prefix's entity. (Check_Local_Access): Set flag Suppress_Value_Tracking_On_Call in current scope if access of local subprogram taken (Analyze_Access_Attribute): Check legality of self-reference even if the expression comes from source, as when a single component association in an aggregate has a box association. (Resolve_Attribute, case 'Access): Do not apply accessibility checks to the prefix if it is a protected operation and the attribute is Unrestricted_Access. (Resolve_Attribute, case 'Access): Set the Etype of the attribute reference to the base type of the context, to force a constraint check when the context is an access subtype with an explicit constraint. (Analyze_Attribute, case 'Class): If the prefix is an interface and the node is rewritten as an interface conversion. leave unanalyzed after resolution, to ensure that type checking against the context will take place. From-SVN: r125395
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... |