This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r135637 - in /trunk/gcc/ada: sem_cat.adb sem_ut...


Author: charlet
Date: Tue May 20 12:49:41 2008
New Revision: 135637

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=135637
Log:
2008-05-20  Thomas Quinot  <quinot@adacore.com>

	* sem_cat.adb
	(Set_Categorization_From_Scope): Do not set In_Remote_Types unless in
	the visible part of the spec of a remote types unit.
	(Validate_Remote_Access_Object_Type_Declaration):
	New local subprogram Is_Valid_Remote_Object_Type, replaces
	Is_Recursively_Limited_Private.
	(Validate_RACW_Primitives): Enforce E.2.2(14) rules: the types of all
	non-controlling formals (and the return type, even though this is not
	explicit in the standard) must support external streaming.
	(Validate_RCI_Subprogram_Declaration): Enforce E.2.3(14) rules: same
	as above for of RAS types and RCI subprograms. (The return type is not
	checked yet).
	Update comments related to RACWs designating limited interfaces per
	ARG ruling on AI05-060.

	* sem_util.ads, sem_util.adb
	(Is_Remote_Access_To_Class_Wide_Type): Only rely on Is_Remote_Types and
	Is_Remote_Call_Interface to identify RACW types in a stable and
	consistent way. We used to rely in this predicate on the privateness of
	the designated type and its ancestors, but depending on the currently
	visible private parts, this caused false negatives. We now uniformly
	rely on checks made at the point where the RACW type is declared.
	(Inspect_Deferred_Constant_Completion): Moved from Sem_Ch7.


Modified:
    trunk/gcc/ada/sem_cat.adb
    trunk/gcc/ada/sem_util.adb
    trunk/gcc/ada/sem_util.ads


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]