sem_ch4.adb (Try_Primitive_Operation): The call is legal if the prefix type is a discriminated subtype of the type of... 2007-04-06 Ed Schonberg <schonberg@adacore.com> Bob Duff <duff@adacore.com> Gary Dismukes <dismukes@adacore.com> * sem_ch4.adb (Try_Primitive_Operation): The call is legal if the prefix type is a discriminated subtype of the type of the formal. (Analyze_Allocator): Collect all coextensions regardless of the context. Whether they can be allocated statically is determined in exp_ch4. (Analyze_Selected_Component): If the prefix is a limited view and the non-limited view is available, use the non-limited one. (Operator_Check): For "X'Access = Y'Access" (which is ambiguous, and therefore illegal), suggest a qualified expression rather than a type conversion, because a type conversion would be illegal in this context. (Anayze_Allocator): Trace recursively all nested allocators so that all coextensions are on the corresponding list for the root. Do no mark coextensions if the root allocator is within a declaration for a stack- allocated object, because the access discriminants will be allocated on the stack as well. (Analyze_Call): Remove restriction on calls to limited functions for the cases of generic actuals for formal objects, defaults for formal objects and defaults for record components. (Analyze_Allocator): Before analysis, chain coextensions on the proper element list. Their expansion is delayed until the enclosing allocator is processed and its finalization list constructed. (Try_Primitive_Operation): If the prefix is a concurrent type, looks for an operation with the given name among the primitive operations of the corresponding record type. (Analyze_Selected_Component): If the prefix is a task type that implements an interface, and there is no entry with the given name, check whether there is another primitive operation (e.g. a function) with that name. (Try_Object_Operation, Analyze_One_Call, Try_Indexed_Call): Handle properly the indexing of a function call written in prefix form, where the function returns an array type, and all parameters of the function except the first have defaults. (Analyze_Equality_Op): If this is a call to an implicit inequality, keep the original operands, rather than relocating them, for efficiency and to work properly when an operand is overloaded. (Analyze_Allocator,Operator_Check,Remove_Abstract_Operations): Split Is_Abstract flag into Is_Abstract_Subprogram and Is_Abstract_Type. (Analyze_Selected_Component): If the prefix is a private extension, only scan the visible components, not those of the full view. (Try_Primitive_Operation): If the operation is a procedure, collect all possible interpretations, as for a function, because in the presence of classwide parameters several primitive operations of the type can match the given arguments. From-SVN: r123594
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... | |
ltcf-c.sh | Loading commit data... | |
ltcf-cxx.sh | Loading commit data... | |
ltcf-gcj.sh | Loading commit data... | |
ltconfig | Loading commit data... | |
ltmain.sh | 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... |