Commit Graph

33 Commits

Author SHA1 Message Date
Robert Dewar
affbee12f4 sem_ch13.adb: Storage pool cannot be given for access to subprogram type.
2006-10-31  Robert Dewar  <dewar@adacore.com>
	    Thomas Quinot  <quinot@adacore.com>

	* sem_ch13.adb: Storage pool cannot be given for access to subprogram
	type.
	(New_Stream_Subprogram): When processing an attribute definition clause
	for a stream-oriented subprogram, record an entity node occurring at
	the point of clause to use for checking the visibility of the clause,
	as defined by 8.3(23) as amended by AI-195.
	(New_Stream_Subprogram): New procedure, factoring behaviour from both
	 New_Stream_Function and New_Stream_Procedure.
	(New_Stream_Function, New_Stream_Procedure): Removed.
	(Analyze_Attribute_Definition_Clause, case Address): Check new
	Alignment_Check check

From-SVN: r118301
2006-10-31 19:06:54 +01:00
Kazu Hirata
ce2e12c27e decl.c, [...]: Fix comment typos.
* decl.c, env.c, gigi.h, init.c, initialize.c, raise-gcc.c,
	sem_ch13.adb, sysdep.c, targtyps.c, tb-alvxw.c, tracebak.c,
	trans.c, utils.c: Fix comment typos.  Follow spelling
	conventions.
	* gnat_rm.texi, gnat_ugn.texi, : Fix typos.  Follow spelling
	conventions.

From-SVN: r114171
2006-05-28 18:03:28 +00:00
Robert Dewar
7a5cf1d56a erroutc.ads, [...] (Set_Message_Blank): Don't insert space after hyphen (small aesthetic change useful for a range of...
2006-02-13  Robert Dewar  <dewar@adacore.com>

	* erroutc.ads, erroutc.adb (Set_Message_Blank): Don't insert space
	after hyphen (small aesthetic change useful for a range of numbers
	using ^-^.
	Suppress range checks for a couple of assignments which otherwise
	cause validity checks with validity checking turned on.

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Size):
	Improvement in error message for object.
	(Rep_Item_Too_Late): Remove '!' in warning message.

From-SVN: r111048
2006-02-15 10:35:45 +01:00
Robert Dewar
c3217dac82 sem_prag.adb: Processing for new pragma Complete_Representation (Analyze_Pragma...
2005-12-05  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Processing for new pragma Complete_Representation
	(Analyze_Pragma, case Debug): Implement two argument form.

	* par-prag.adb: Entry for new pragma Complete_Representation
	(Prag, case Debug): Recognize two argument form of pragma Debug
	New interface for Set_Style_Check_Options.

	* sem_ch13.adb: Implement new pragma Complete_Representation.

	* snames.adb, snames.ads, snames.h: Entry for new pragma
	Complete_Representation.

From-SVN: r108299
2005-12-09 18:20:41 +01:00
Thomas Quinot
27e6455d37 sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Reject the clause if the array aggregate is surrounded by parentheses.
2005-09-01  Thomas Quinot  <quinot@adacore.com>

	* sem_ch13.adb (Analyze_Enumeration_Representation_Clause): Reject the
	clause if the array aggregate is surrounded by parentheses.

From-SVN: r103880
2005-09-05 09:59:42 +02:00
R. Kelley Cook
cb5fee25cd Update FSF address
From-SVN: r101492
2005-07-01 01:29:17 +00:00
Ed Schonberg
edd63e9bac einfo.ads, einfo.adb (Is_Local_Anonymous_Access): New flag on anonymous access types...
2005-06-14  Ed Schonberg  <schonberg@adacore.com>
	    Javier Miranda  <miranda@adacore.com>
	    Thomas Quinot  <quinot@adacore.com>
	    Robert Dewar  <dewar@adacore.com>
	    Hristian Kirtchev  <kirtchev@adacore.com>
	    Gary Dismukes  <dismukes@adacore.com>

	* einfo.ads, einfo.adb (Is_Local_Anonymous_Access): New flag on
	anonymous access types, to indicate that the accessibility level of
	the type is determined by that of the enclosing declaration.
	(Has_Persistent_BSS): New flag
	(Set_Is_Primitive_Wrapper): Upgrade the barrier to allow the usage
	of this attribute with functions.
	(Is_Primitive_Wrapper): Remove the barrier.
	(Has_Specified_Stream_Input, Has_Specified_Stream_Output,
	Has_Specified_Stream_Read, Has_Specified_Stream_Write):
	New subprograms.
	(Set_Has_Specified_Stream_Input, Set_Has_Specified_Stream_Output,
	Set_Has_Specified_Stream_Read, Set_Has_Specified_Stream_Write):
	New subprograms.
	(Is_Pure_Unit_Access_Type): New flag
	(Abstract_Interfaces): Complete the assertion to cover all usages.
	(Set_Is_Interface): Complete the assertion to cover all usages.
	(Is_Primitive_Wrapper): New attribute.
	(Is_Obsolescent): Now applies to all entities (though it is only set
	for subprograms currently)
	New flag:  Has_Constrained_Partial_View, to implemente Ada 2005 AI-363,
	which solves various problems concerning access subtypes.
	(Has_Persistent_BSS): New flag
	(Is_Primitive_Wrapper, Set_Primitive_Wrapper): Code cleanup.
	Remove these subprograms because this attribute is currently
	not used.
	New entity flags:
	Has_Specified_Stream_Input (Flag190)
	Has_Specified_Stream_Output (Flag191)
	Has_Specified_Stream_Read (Flag192)
	Has_Specified_Stream_Write (Flag193)
	Present in all type and subtype entities. Set for a given view if the
	corresponding stream-oriented attribute has been defined by an
	attribute definition clause. When such a clause occurs, a TSS is set
	on the underlying full view; the flags are used to track visibility of
	the attribute definition clause for partial or incomplete views.
	(Is_Pure_Unit_Access_Type): New flag
	Clarify use of Is_Internal.
	(Is_Primitive_Wrapper): New attribute present in primitive subprograms
	internally generated to wrap the invocation of tasks and protected
	types that implement interfaces.
	(Implementation_Base_Type): Documentation correction
	(Is_Obsolescent): Now applies to all entities (though it is only set
	for subprograms currently)
	New flag:  Has_Constrained_Partial_View, to implement Ada 2005 AI-363,
	which solves various problems concerning access subtypes.

	* exp_ch9.adb (Type_Conformant_Parameters): Introduce mode conformance
	for examined parameters. Identify unequal parameter list lengths as
	non-conformant parameters.
	(Overriding_Possible): Do not check for "All" qualifier in declaration
	of controlling access parameter, following prescription of AI-404.
	(Build_Entry_Wrapper_Spec, Build_Entry_Wrapper_Body): New subprograms
	that build the procedure body that wraps an entry invocation
	(Build_Corresponding_Record, Build_Protected_Sub_Specification,
	Expand_N_Protected_Body, Expand_N_Protected_Type_Declaration,
	Expand_N_Task_Body, Expand_N_Task_Type_Declaration): Modified to
	give support to abstract interface types

	* freeze.adb (Freeze_Entity): Issue error message if
	Is_Pure_Unit_Access_Type set, unless we are in Ada 2005 mode and the
	type has no storage pool (Ada 2005) AI-366.
	Also modified to give support to abstract interface types
	(Freeze_Subprogram): Issue an error for a dispatching subprogram with an
	Inline_Always pragma.

	* par-ch9.adb (P_Task_Items): Reserved words "not" or "overriding" may
	now begin an entry declaration.
	(P_Entry_Or_Subprogram_With_Indicator): New procedure in
	P_Protected_Operation_Declaration_Opt. Parse an entry declaration or
	a subprogram declaration preceded by an overriding indicator.
	(P_Protected_Operation_Declaration_Opt): Add case for parsing entry
	declarations or subprogram declarations preceded by reserved words
	"not" or "overriding".
	(P_Entry_Declaration): Update comment. Parse and check overriding
	indicator, set semantic flags of entry declarations.
	(P_Task): New error message in case of private applied
	to a task type declaration.
	(P_Protected): New error message in case of private applied
	to a task type declaration.

	* sem_ch7.adb (Preserve_Full_Attributes): Modified to handle the case
	in which the full view of a type implementing an interface is a
	concurrent type.
	(Has_Overriding_Pragma): Remove obsolete implementation of AI-218.
	Declare_Inherited_Private_Subprograms): If an explicit operation
	overrides an operation that is inherited in the private part, mark the
	explicit one as overriding, to enable overriding indicator checks.
	(Preserve_Full_Attributes): Propagate Is_Unchecked_Union attribute from
	full view to partial view, to simplify handling in back-end.

	* sprint.adb: Print interface lists where needed: derived types,
	protected types, task types.
	output "is null" for null procedures. Part of implementation of

	* sem_cat.adb (Validate_Access_Type_Declaration): Implement AI-366
	relaxation of rules for access types in pure, shared passive partitions.

	* exp_strm.adb (Build_Mutable_Record_Read_Procedure): Reorganize to
	first read discriminants into temporary objects, performing checks on
	the read values, then possibly performing discriminant checks on the
	actual (if it is constrained), and only finally reading the components
	into a constrained temporary object.
	(Build_Elementary_Input_Call): Adjust the specific circuitry for the
	case of reading discriminants of a mutable record type to recognize
	the new form of the code generated by
	Build_Mutable_Record_Read_Procedure.

	* exp_tss.ads, exp_tss.adb (Make_Init_Proc_Name): Reimplement in terms
	of a simple call to Make_TSS_Name.
	(Make_TSS_Name_Local): Add the TSS name as the last thing in the name
	buffer, in order for Is_TSS to work correctly on local TSS names.

	* sem_attr.ads, sem_attr.adb (Resolve_Attribute, case 'Access): Use flag
	Is_Local_Anonymous_Access to check legaliy of attributes in the
	context of  access components and stand-alone access objects.
	(Stream_Attribute_Available): In Ada 95 mode, a stream attribute is
	treated as available for a limited private type if there is an
	attribute_definition_clause that applies to its full view, but not in
	other cases where the attribute is available for the full view
	(specifically, the sole fact that the full view is non-limited does not
	make the attribute available for the partial view).
	(Build_Access_Subprogram_Type): Diagnose attempt to apply 'access to a
	non-overloaded intrinsic subprogram.
	(Check_Stream_Attribute): Reject an attribute reference for an
	unavailable stream attribute even if the prefix is not a limited type
	(case of a 'Input attribute reference for an abstract, non-classwide
	type)
	(Stream_Attribute_Available): New function to determine whether a stream
	attribute is available at a place.
	(Check_Attribute): Use Stream_Attribute_Available instead of just
	testing for TSS presence on the implementation base type.
	(Analyze_Attribute): Modified to give support to task interfaces.
	(Analyze_Access_Attribute): Add error check for use of an Access (or
	Unrestricted_Access) attribute with a subprogram marked as
	Inline_Always.
	(Analyze_Attribute, case Attribute_Address): Add error check for use of
	an Address attribute with a subprogram marked as Inline_Always.
	Update Eval_Attribute to handle new value of Width from AI-395

	* sem_ch13.adb (Analyze_Stream_TSS_Definition): New subprogram.
	(Analyze_Attribute_Definition_Clause, cases Input, Output, Read, Write):
	Factor common code across the stream-oriented attribute circcuits into
	a new subprogram, Analyze_Stream_TSS_Definition. The new uniform
	processing is functionally identical to the previous duplicated one,
	except that an expression that denotes an abstract subprogram will now
	be rejected, as mandated by AI-195 item 5.

	* sem_util.ads, sem_util.adb (Type_Access_Level): Use flag
	Is_Local_Anonymous_Access to apply accessibility checks to access
	components and stand-alone access objects.
	(Has_Discriminant_Dependent_Constraint): Moved to spec for use
	elsewhere.
	(Is_Potentially_Persistent_Type): New function
	(Is_Dependent_Component_Of_Mutable_Object): If the enclosing object is
	a heap-object whose type has a constrained partial view, the object is
	unconstrained and the component may depend on a discriminant, making its
	renaming illegal.

	* sinfo.ads, sinfo.adb
	(Must_Not_Override): Flag applicable to N_Entry_Declaration.
	(Must_Override): Flag applicable to N_Entry_Declaration.
	Indicate that interface_list can appear in single task and single
	protected declarations.
	Replace Is_Overriding and Not_Overriding with Must_Override and
	Must_Not_Override, to better express intent of AI.
	Is_Overriding, Not_Overriding: Ada2005 flags that indicate the presence
	of an overriding indicator in a subprogram or instance.
	Ada 2005 (AI-248) Null_Present can appear in a procedure specification.
	Add the overriding indicator [[not] overriding] construct to the
	following grammar productions:
	 ENTRY_DECLARATION
	 GENERIC_INSTANTIATION
	 SUBPROGRAM_SPECIFICATION

	* par-ch10.adb (P_Compilation_Unit): Subprogram declaration or body
	can start with an overriding indicator.

	* par-ch6.adb (P_Subprogram): Recognize overriding indicator, and set
	flags accordingly on subrogram specifications or instances.

	* sem_ch8.adb:
	(Analyze_Subprogram_Renaming): For a renaming_as_body, verify that the
	overriding_indicator, if present, is consistent with status of spec.
	Improve error message for null-excluding checks on controlling access
	parameters.
	(Check_In_Previous_With_Clause): Protect the frontend against
	previously reported critical errors in the context clauses.
	Save and restore Ada_Version_Explicit, for implementation of AI-362
	(Analyze_Subprogram_Renaming): If the new entity is a dispatching
	operation verify that controlling formals of the renamed entity that
	are access parameters are explicitly non-null.
	(Find_Expanded_Name): Improve error message when prefix is an illegal
	reference to a private child unit.

	* exp_imgv.adb, s-imgwch.ads, s-imgwch.adb, s-valwch.adb,
	s-valwch.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdwch.adb:
	Rewrite to correspond to new wide character names in AI-395

        * par-ch12.adb (P_Formal_Subprogram_Declaration): Recognize null
        default procedures.

From-SVN: r101029
2005-06-16 10:35:26 +02:00
Thomas Quinot
5b846f5abb sem_ch13.adb (New_Stream_Function, [...]): For a tagged limited type, the TSS is a newly built renaming declaration...
2005-03-17  Thomas Quinot  <quinot@adacore.com>

	* sem_ch13.adb (New_Stream_Function, New_Stream_Procedure): For a
	tagged limited type, the TSS is a newly built renaming declaration:
	insert it using Set_TSS, not Copy_TSS.

From-SVN: r96673
2005-03-18 12:51:13 +01:00
Robert Dewar
82c8073471 g-zstspl.ads: New file.
2005-02-09  Robert Dewar  <dewar@adacore.com>
	    Thomas Quinot  <quinot@adacore.com>
	    Javier Miranda  <miranda@adacore.com>
	    Pascal Obry  <obry@adacore.com>
	    Ed Schonberg  <schonberg@adacore.com>
	    Doug Rupp  <rupp@adacore.com>
	    Gary Dismukes  <dismukes@adacore.com>
	    Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* g-zstspl.ads: New file.

	* a-chahan.ads, a-chahan.adb: Add declarations from AI-285

	* a-string.ads: Add pragma Ada_05 for wide_wide_space to get warning in
	Ada 95 mode
	Add definition of Wide_Wide_Space for AI-285

	* impunit.ads, impunit.adb, sem_ch10.adb: Complete rewrite and new
	interface (to support Ada 95 and Ada 2005 units).
	Add Unbounded_IO files
	Add entries for Wide_Wide packages for AI-285
	Add list of containers packages to Ada 2005 unit list

	* a-swuwti.ads, a-swuwti.adb, a-suteio.ads, a-suteio.adb: Updates to
	support new Unbounded_IO package cleanly.

	* g-utf_32.ads, g-utf_32.adb: New files.

	* Makefile.rtl: Add entry for g-utf_32
	Add new files for Unbounded_IO
	Adjust make file for new AI-285 wide wide packages
	Add AI-302 containers to the run time.

	* a-stwibo.adb, a-stwibo.ads, a-stwisu.adb, a-stwisu.ads,
	a-strbou.ads, a-strbou.adb, a-strsup.ads, a-strsup.adb: New
	subprograms for AI-301.

	* a-stwiun.adb, a-stwiun.ads: Minor reformatting.

	* a-stunau.ads: Minor comment correction

	* rtsfind.ads, rtsfind.adb: Add definitions for Wide_Wide attributes
	etc.
	Also extend Text_IO_Kludge to support Wide_Wide_Text_IO
	(Check_RPC): Update to match changes in expanded code.
	Clean up unused entity.

	* exp_ch3.ads, exp_ch3.adb: Fix various places where Wide_Wide_String
	was not taken into account.
	This includes proper initialization with Normalize_Scalars.
	(Get_Simple_Init_Val): Major rewrite for initialize scalars and
	normalize scalars cases (particularly the latter) to do a better job
	of finding invalid representations.

	* s-scaval.ads, s-scaval.adb: Add values for zero invalid values

	* s-strops.ads, s-strops.adb: Remove string normalize routines, never
	used

	* exp_dist.adb: Add support for wide wide character type
	(Expand_Receiving_Stubs_Bodies): For a package declaration that has a
	private part, generate stub bodies at the end of the private part,
	not the visible part.
	(Add_RACW_Primitive_Operations_And_Bodies): Add last missing code for
	PolyORB support.
	(Add_Obj_RPC_Receiver_Completion): Add PCS-specific subprograms and
	generic wrapper to execute final processing after completing the
	expansion of the RPC receiver for an RACW.

	* snames.h, snames.ads, snames.adb: Add definitions for wide_wide
	packages and attributes.
	(Preset_Names): Addition of the new reserved words of Ada 2005,
	that is interface, overriding and synchronized.
	(Get_Pragma_Id): Give support to the use of the new reserved word
	"interface" as a pragma name.
	(Is_Pragma_Name): Give support to the use of the new reserved word
	"interface" as a pragma name.
	(Preset_Names): Add stream_size string for the Stream_Size Ada2005
	attribute implementation.

	* exp_attr.adb (Expand_Attribute_Reference): Do not apply validity
	checks to entities that are output parameters of Asm operations.
	Handle the Stream_Size attribute.
	Add implementation of Wide_Wide_Value, Wide_Wide_Image, Wide_Wide_Width

	* exp_imgv.ads, exp_imgv.adb: Add support for wide wide character type

	* sem_attr.adb (Eval_Attribute): Raise compile-time constraint error
	for second parameter being 0.0.
	Add support for wide wide character type.
	(Analyze_Attribute, Eval_Attribute): Handle the Stream_Size attribute.

	* s-valwch.adb, s-valwch.ads, s-imgwch.ads, s-imgwch.adb,
	s-wchstw.ads, s-wchstw.adb, s-wchwts.adb, s-wchwts.ads,
	s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdcha.ads,
	s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb, s-wwdwch.ads: Add support
	for wide wide character cases.

	* cstand.adb: Create entities for Wide_Wide_Character and
	Wide_Wide_String.

	* i-c.ads, i-c.adb: Fix not raising CE for null wide strings in
	accordance with AI-258.
	Add new declarations for 16/32 bit C character types (Part of AI285)

	* einfo.ads, einfo.adb (Is_Obsolescent, Is_Ada_2005): New flag
	(Obsolescent_Warning): New field
	(Rep_Clause): New local subprogram used to share code. Returns the rep
	clause for which the name is given in parameter.
	(Has_Stream_Size_Clause): New routine.
	(Stream_Size_Clause): Idem. Implementation is based on Rep_Clause.
	(Address_Clause): Implementation is now using Rep_Clause.
	(Alignment_Clause): Idem.
	(Size_Clause): Idem.

	* lib-xref.adb (Generate_Reference): Test for reference to Ada 2005
	entity in non-Ada 2005 mode and generate warning.

	* par-prag.adb: Add handling of one argument form for pragma Ada_05.
	(Prag): Code cleanup. Remove old gnat pragma "overriding"

	* sem_prag.adb: Add handling of one argument form for pragma Ada_05
	(Analyze_Pragma, case Elaborate, Elaborate_All): Do not disable warnings
	on the named unit if the pragma is not in the current compilation unit,
	so that elaboration calls in the current unit can set up an elaboration
	dependency on the named unit, as needed.
	(Analyze_Pragma, case Obsolescent): Allow pragma to be used for library
	subprogram as well as for subprograms declared within a package.
	(Analyze_Pragma, Sig_Flags): Code cleanup. Remove support for the GNAT
	pragma overriding.

	* krunch.ads, krunch.adb: Add special handling of Wide_Wide (krunched
	to z) to avoid some instances of duplication for Wide_Wide packages.

	* namet.ads, namet.adb: Implement encoding (WWhhhhhhhh) for wide wide
	characters.

	* scn.adb: Char_Literal_Value field is now a Uint

	* scng.adb: Significant rewrite to handle new Ada 2005 features
	allowing wide and wide wide characters in program text, e.g. for
	identifiers, as described in AI-285.
	(Set_Reserved): New procedure, makes setting up keywords cleaner.
	(Initialize_Scanner): Register the new reserved words of Ada 2005.
	(Scan): Give support to the new reserved words.

	* par-ch2.adb (P_Identifier): Compiling in Ada95 mode, generate a
	warning notifying that interface, overriding, and synchronized are
	new reserved words.
	(P_Pragma): Allow the use of the new reserved word "interface" as
	a pragma name.

	* gnatls.adb, gnatbind.adb,
	ali-util.adb, binde.adb, ali.ads, ali.adb: Code cleanup. Rename
	identifiers named "interface" to "SAL_Interface".

	* bindgen.adb (Gen_Main_Ada): Add support for the new SEH
	(Structured Exception handling).
	(Gen_Main_C): Idem.

	* bindgen.adb:
	(Gen_Main_Ada): Set the default exit code if specified.
	(Gen_Main_C): Likewise.
	Part of *DC20-006.
	(Gen_Output_File_C): Remove redundant output of gnat_exit_status.
	Code cleanup. Rename identifiers named "interface" to "SAL_Interface"

	* switch-b.adb, bindusg.adb, opt.ads, vms_data.ads: Add handling of
	new -Xnnn switch.

	* mlib-prj.adb, mlib.adb: Code cleanup. Rename one identifier that
	has a collision with the new Ada 2005 "interface" reserved word.

	* par-ch3.adb (P_Defining_Identifier): Compiling in Ada95 mode,
	generate a warning notifying that interface, overriding, and
	synchronized are new reserved words.

	* scans.ads (Token_Type): Addition of the tokens corresponding to the
	new reserved words of Ada 2005: Tok_Interface, Tok_Overriding
	and Tok_Synchronized.

	* sem_res.adb (Resolve_Actuals): Change error messages to refer to
	"dispatching" rather than "primitive" operations, since dispatching
	calls are now allowed to abstract formal subprograms (which are not
	primitive).
	Char_Literal_Value field is now a Uint
	(Resolve_Slice): If the prefix is an access to an unconstrained array,
	compute the actual subtype of the designated object to impose the proper
	index constraints.
	(Resolve_Selected_Component): Do not insert an access check if the
	prefix is an access type: such a node is expanded into an explicit
	dereference, on which the access check is performed anyway. Removes
	expensive duplicate checks.
	(Resolve_Call): Use new flag Is_Obsolescent and field
	Obsolescent_Warning so that pragma Obsolescent works on library
	subprograms.
	Add support for wide wide character type
	(Resolve_Allocator): Replace the error message on wrong null-exclusion
	value by a warning message.
	(Resolve_Type_Conversion): If the mixed-mode expression is interpreted
	as fixed-point, and one of the operands is non-static and universal, it
	can only be an illegal exponentiation operation, in which case there is
	no real value to retrieve.

	* exp_strm.adb: Add support for wide wide character type
	(Build_Elementary_Input_Call): Compute the size of the stream element by
	querying the rep chain to find the Stream_Attribute attribute value.
	(Build_Elementary_Write_Call): Ditto.

	* sem_aggr.adb: Char_Literal_Value field is now a Uint
	Add support for wide wide character type
	Replace the error messages on wrong null-exclusion value by warnings
	as described in Ada 2005.
	(Resolve_Extension_Aggregate): Document the fact that the error
	message on class-wide expressions in extensions aggregates.

	* sem_case.adb: Add support for wide wide character type

	* sem_ch13.adb: Add support for wide wide character type
	(Analyze_Attribute_Definition_Clause): Handle the Stream_Size attribute.

	* sem_ch3.adb: Add support for wide wide character type
	(Process_Subtype): If constraint is illegal for the type, set Ekind of
	now-useless Itype, to prevent cascaded errors on a compiler built
	without -gnatp.

	* sem_ch8.adb: Add with and use of Sem_Disp.
	(Analyze_Subprogram_Renaming): Replace unclean uses of
	Corresponding_Spec with Corresponding_Formal_Spec (and delete setting
	of Corresponding_Spec to Empty).
	(Attribute_Renaming): Replace use of Corresponding_Spec with
	Corresponding_ Formal_Spec and simplify condition.
	(Use_One_Package): Check that scope of homonym of identifier is defined,
	before checking whether it is a wrapper package.
	Add support for wide wide character type

	* sem_eval.adb: Add support for wide wide character type.
	(Eval_Arithmetic_Op): Check for compile time known signed integer
	overflow in the non-static case.
	(Subtypes_Statically_Match): A formal scalar type and its base type do
	not statically match.

	* sem_util.adb (Collect_Primitive_Operations): Minor change of "/=" to
	"not in" for test of N_Formal_Subprogram_Declaration (which is now a
	subtype).
	(Unit_Declaration_Node): Ditto.
	(Is_Variable_Prefix):  For the case of an indexed component whose prefix
	has a packed array type, the prefix has been rewritten into a type
	conversion. Determine variable-ness from the converted expression.
	Handle wide wide character cases.

	* stand.ads: Add types Wide_Wide_Character and Wide_Wide_String

	* stringt.ads, stringt.adb: Handle full UTF-32 range.
	Remove ["0A"] from comment, since it can look like a line terminator.
	Currently we don't permit this, but this is under discussion by the
	ARG, and it is easy enough to use a different example.

	* s-wchcon.ads, s-wchcnv.ads, s-wchcnv.adb: Add new subprograms for
	handling UTF-32 encoding for wide wide character.
	Implement new brackets coding ["hhhhhhhh"]
	Add UTF-8 encodings for full UTF-32 range

	* ttypes.ads: Add definition of Standard_Wide_Wide_Character_Size

	* types.h, types.ads, types.adb: Wide_Wide_Character now has full 31
	bit range Add full UTF-32 support.
	(RT_Exception_Code): Addition of CE_Null_Not_Allowed; used to
	notify that constraint error will be raised at run-time
	because a null value is assigned to a null-excluding object.
	Remove some obsolete declarations and make Char_Code
	unsigned.

	* a-except.adb (Rcheck_30): New subprogram. Addition of the message
	corresponding to CE_Null_Not_Allowed, and adjust the output of all the
	Rcheck subprograms.

	* checks.adb (Check_Null_Not_Allowed): Replace the error message on
	wrong null-exclusion value by a warning message.
	(Enable_Range_Check): Do range check if the prefix is an
	explicit dereference whose designated object is an unconstrained array.
	Current algorithm for removing duplicate checks is over-eager in this
	case.

	* sem_ch5.adb (Analyze_Assignment): Replace the error messages on wrong
	null-exclusion value by a warning message

	* atree.h, atree.ads, atree.adb: Remove Char_Code field support
	completely. Add support for Uint2 field

	sem_ch2.adb, exp_ch11.adb, exp_dbug.adb,
	exp_prag.adb: Char_Literal_Value field is now a Uint.

	* exp_util.adb (Insert_Actions): Replace
	N_Formal_Subprogram_Declaration by
	N_Formal_{Abstract|Concrete}_Subprogram_Declaration.
	Char_Literal_Value field is now a Uint.

	* sinfo.ads, sinfo.adb (Corresponding_Formal_Spec): New function
	defined for subprogram renaming declarations. When set, the field
	indicates the defining entity of a corresponding formal subprogram
	when the renaming corresponds to a formal subprogram association in an
	instantiation.
	(Set_Corresponding_Formal_Spec): New procedure to return
	Corresponding_Formal_Spec field.
	Minor changes of "=" to "in" in tests of N_Formal_Subprogram_Declaration
	(which is now a subtype).
	Char_Literal_Value field is now a Uint

	* exp_disp.ads, exp_disp.adb (Make_DT): Generate code that moves the
	pointer to the base of the dispatch table.
	Minor changes to comments.
	(Controlling_Type): New function for determining the tagged type
	associated with a tagged primitive subprogram.
	(Expand_Dispatching_Call): Add support for a controlling actual that is
	directly a value of type Ada.Tag rather than a tagged object.

	* i-cpp.ads, i-cpp.adb, a-tags.ads, a-tags.adb: Update documentation
	describing the new layout.
	(Dispatch_Table): The expander computes the actual array size, allocates
	the Dispatch_Table record accordingly, and generates code that displaces
	the base of the record after the Typeinfo_Ptr component. The access to
	these components is done by means of local functions.
	(Offset_To_Top): New function.
	(Typeinfo_Ptr): New function.
	(Get_TSD): Modified to access the new position of the TSD.
	(Set_TSD): Modified to save the TSD in its new position.

	* par-ch12.adb (P_Formal_Subprogram_Declaration): Add parsing for the
	case of formal abstract subprograms. Add check and message for -gnat05.
	Update comments.

	* sem_ch12.adb: Add with and use for Sem_Disp.
	(Analyze_Associations): Minor change from "=" to "in" for use of
	N_Formal_Subtype_Declaration (which is now a subtype).
	(Set_Analyzed_Formal): Minor changes from "=" to "in" for uses of
	N_Formal_Subtype_Declaration (which is now a subtype).
	(Analyze_Formal_Subprogram): Add handling for
	N_Formal_Abstract_Subprogram, marking the formal as abstract and
	dispatching, setting the controlling status of the formal parameters
	and result, and issuing an error if there is no controlling type for
	the formal subprogram.
	(Instantiate_Formal_Subprogram): Rather than setting Corresponding_Spec,
	which is an unclean use of that field, we set the new field
	Corresponding_Formal_Spec to make the formal subprogram available to
	processing in Analyze_Subprogram_Declaration.
	(Analyze_Formal_{Discrete, Decimal_Fixed_Point, Fixed_Point,
	Floating_Point, Modular_Integer, Signed_Integer}_Type: Make formal type
	Constrained, so that it is is does not statically match its anonymous
	base type.

	* sem_ch6.adb (Analyze_Subprogram_Specification): Include test for
	abstract formal subprograms in error check for functions returning
	abstract types. Set scope of new designator for
	a parameterless subprogram, so that it is available when checking the
	body for nested subprograms, before full analysis of said body.
	(Analyze_Subprogram_Body): Warn on inlining bodies with nested
	subprogram only if inner one comes from source.
	(Analyze_Function_Call): If the call is given in object notation, the
	analysis of the name rewrites the node and analyzes it with the proper
	argument list. After analyzing the name, if the call has been rewritten
	and the result type is set, no further analysis is needed.
	(Analyze_Return_Type): Subsidiary to Process_Formals: analyze subtype
	mark in function specification, in a context where the formals are
	visible and hide outer homographs.

	* sem_disp.adb (Check_Controlling_Type): Relax the check for same scope
	as the tagged type for the cases of abstract formal subprograms and
	renamings of those.  Clean up spec comments.
	(Check_Dispatching_Context): Add error message to indicate "abstract
	procedure", covering the case of a call to a formal abstract procedure
	that has statically tagged operands.
	(Check_Dispatching_Call): Check for the case of an actual given by
	a tag-indeterminate function call whose type is an ancestor of the
	containing call's associated tagged type. This situation can occur
	for inherited primitives with function defaults. In this case we
	use the tagged type's tag directly as the controlling argument for
	the calls.
	(Expand_Call): Name change on call to Expand_Dispatch_Call.

	* sprint.adb (Sprint_Node_Actual): Split
	N_Formal_Subprogram_Declaration into two alternatives for the new
	cases N_Formal_Abstract_Subprogram_Declaration and
	N_Formal_Concrete_Subprogram_Declaration.
	Char_Literal_Value field is now a Uint.

	* trans.c: Get rid of junk Uint2 reference.
	Char_Literal_Value field is now a Uint.
	(gnat_to_gnu, case N_Aggregate): Check TYPE_UNCHECKED_UNION_P.
	(gigi): Correct third arg to gimplify_body.

	* ada-tree.h: (TYPE_UNCHECKED_UNION_P): New flag.
	(TYPE_LANG_FLAG_0): Check for record or union.

	* treepr.adb: Char_Literal_Value field is now a Uint

	* uintp.h, uintp.ads, uintp.adb: Add new routines UI_To_CC and
	UI_From_CC.

	* widechar.ads, widechar.adb (Is_UTF_32_Non_Graphic): New function
	Add full UTF-32 support
	Char_Code is now 32 bits

	* sinput.ads, sinput.adb (Skip_Line_Terminators): Extend to deal with
	wide character UTF_32 line terminators.
	Initialize Main_Source_File to avoid error when no main
	source is loaded.

	* errout.adb (Finalize): Do not check Num_SRef_Pragmas
	(Main_Source_File) when no main source has been loaded, to avoid
	potential crash.

From-SVN: r94809
2005-02-10 14:50:48 +01:00
Arnaud Charlet
5f3ab6fbf0 s-atacco.ads, [...]: Protect use of 'Constrained by warnings on/off...
* s-atacco.ads, a-direio.adb: Protect use of 'Constrained by warnings
	on/off, since this is an obsolescent feature, for which we now generate
	a warning.

	* sem_attr.adb (Analyze_Attribute, case Constrained): Issue warning if
	warning mode is set and obsolescent usage of this attribute occurs.
	(Resolve_Access, case 'Access): Note that GNAT uses the context type to
	disambiguate overloaded prefixes, in accordance with AI-235. GNAT code
	predates, and partly motivates, the adoption of the AI.
	Implement new Ada 2005 attribute Mod

	* exp_attr.adb (Expand_N_Attribute_Reference): Implement Ada 2005
	attribute Mod.

	* par-ch4.adb (P_Name): In Ada 2005 mode, recognize new attribute Mod

	* snames.h, snames.ads, snames.adb: Add entry for No_Dependence for
	pragma restrictions.
	New entry for Ada 2005 attribute Mod.

	* par-prag.adb:
	Add recognition of new pragma Restrictions No_Dependence
	Recognize restriction No_Obsolescent_Features at parse time

	* bcheck.adb: Add circuitry for checking for consistency of
	No_Dependence restrictions.

	* lib-writ.ads, lib-writ.adb: Output new R lines for No_Dependence
	restrictions.

	* restrict.ads, restrict.adb: Add subprograms to deal with
	No_Dependence restrictions.

	* rtsfind.adb: Check that implicit with's do not violate No_Dependence
	restrictions.

	* sem_ch3.adb, sem_ch11.adb, sem_ch13.adb, lib-xref.adb,
	sem_attr.adb: Add check for new restriction No_Obsolescent_Features

	* scn.ads, prj-err.ads, prj-err.adb, ali-util.adb, gprep.adb: Add new
	dummy parameter to scng instantiation.
	Needed for new restriction No_Obsolescent_Features

	* scn.adb: (Obsolescent_Check): New procedure
	Needed for new restriction No_Obsolescent_Features

	* scng.ads, scng.adb: Always allow wide characters in Ada 2005 mode, as
	specified by AI-285, needed for implementation of AI-388 (adding greek
	pi to Ada.Numerics).
	Add new generic formal to scng, needed for new restriction
	No_Obsolescent_Features.

	* s-rident.ads: Add new restriction No_Obsolescent_Features.

	* ali.ads, ali.adb: Adjustments for reading new No_Dependence
	restrictions lines.
	(Scan_ALI): When finding an unexpected character on an R line, raise
	exception Bad_R_Line, instead of calling Fatal_Error, so that, when
	Ignore_Errors is True, default restrictions are set and scanning of the
	ALI file continues with the next line. Also, when Bad_R_Line is raised
	and Ignore_Errors is True, skip to the end of le line.

	* sem_ch10.adb: Check that explicit with's do not violate
	No_Dependence restrictions.
	(Install_Withed_Unit): Add code to implement AI-377 and diagnose
	illegal context clauses containing child units of instance.

	* sem_prag.adb: Processing and checking for new No_Dependence
	restrictions.
	(Analyze_Pragma, case Psect_Object): Call Check_Arg_Is_External_Name to
	analyze and check the External argument.

	* a-numeri.ads: Add greek letter pi as alternative spelling of Pi

From-SVN: r92829
2005-01-03 16:32:19 +01:00
Arnaud Charlet
a5b62485c3 g-socket.ads (Get_Host_By_Address, [...]): Clarify documentation of the behaviour of these functions when...
* g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify
	documentation of the behaviour of these functions when passed an IP
	address that has no record in the system hosts database and no reverse
	record in the DNS.

	* cstand.adb, a-tags.ads: Fix typos in comment.

	* exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb,
	exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb,
	sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb,
	s-poosiz.ads: Minor reformatting

	* make.adb: Minor reformatting
	Add some ??? comments asking for more comments

	* s-poosiz.adb: Minor reformatting
	Add comments on alignment requirement

	* sinfo.ads: Remove obsolete comment and fix typo.

	* gnat_ugn.texi: Update the section "The GNAT Driver and Project
	Files" with the new tool and package names.
	Reformatting to suppress most of the warnings for line too long
	Document the new section "Project Search Path:" in the output of
	gnatls -v.
	Add gnatmetric section

	* vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and
	-gnatec= are not direct switches of gnatmetric. Changed -eis to -eps
	and -eit to -ept. Added qualifier
	/ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec.

From-SVN: r91896
2004-12-08 12:49:44 +01:00
Arnaud Charlet
1d571f3b00 einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used
* einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used
	(Has_Rep_Pragma): New function
	(Has_Attribute_Definition_Clause): New function
	(Record_Rep_Pragma): Moved here from sem_ch13.adb
	(Get_Rep_Pragma): Remove junk kludge for Stream_Convert pragma

	* sem_ch13.ads, sem_ch13.adb (Record_Rep_Pragma): Moved to einfo.adb

	* exp_prag.adb: (Expand_Pragma_Common_Object): New procedure
	(Expand_Pragma_Psect_Object): New procedure
	These procedures contain the revised and cleaned up processing for
	these two pragmas. This processing was formerly in Sem_Prag, but
	is more appropriately moved here. The cleanup involves making sure
	that the pragmas are properly attached to the tree, and that no
	nodes are improperly shared.

	* sem_prag.adb: Move expansion of Common_Object and Psect_Object
	pragmas to Exp_Prag, which is more appropriate.
	Attach these two pragmas to the Rep_Item chain Use Rep_Item chain to
	check for duplicates Remove use of Is_Psected flag, no longer needed.
	Use new Make_String_Literal function with string.

	* exp_attr.adb (Expand_Fpt_Attribute): The floating-point attributes
	that are functions return universal values, that have to be converted
	to the context type.
	Use new Make_String_Literal function with string.
	(Get_Stream_Convert_Pragma): New function, replaces the use of
	Get_Rep_Pragma, which had to be kludged to work in this case.

	* freeze.adb: Use new Has_Rep_Pragma function

	* exp_intr.adb, exp_ch3.adb, sem_attr.adb: Use new Make_String_Literal
	function with string.
	Use new Has_Rep_Pragma function.

	* tbuild.ads, tbuild.adb (Make_String_Literal): New function, takes
	string argument.

From-SVN: r90904
2004-11-19 11:56:37 +01:00
Cyrille Comar
fe98a6aa82 sem_ch13.adb (Analyze_Attribute_Definition_Clause, [...]): enhance, document & limit detection of non-sharable internal pools.
2004-10-26  Cyrille Comar  <comar@act-europe.fr>

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
	'Storage_Pool): enhance, document & limit detection of non-sharable
	internal pools.

	* impunit.adb: Make System.Pool_Global and System.Pool_Local visible.

	* s-pooglo.ads: Add more documentation now that this pool is properly
	documented.

From-SVN: r89669
2004-10-27 15:41:23 +02:00
Ed Schonberg
1c6c6771b6 sem_util.adb (Explain_Limited_Type): Ignore internal components when searching for a limited component to flag.
2004-10-04  Ed Schonberg  <schonberg@gnat.com>

	* sem_util.adb (Explain_Limited_Type): Ignore internal components when
	searching for a limited component to flag.

	* exp_attr.adb (Freeze_Stream_Subprogram): Subsidiary procedure to
	expansion of Input, to account for the fact that the implicit call
	generated by the attribute reference must freeze the user-defined
	stream subprogram. This is only relevant to 'Input, because it can
	appear in an object declaration, prior to the body of the subprogram.

	* sem_ch13.adb (Rep_Item_Too_Late): Make the error non-serious, so that
	expansion can proceed and further errors uncovered.
	(Minor clean up): Fix cases of using | instead of \ for continuation
	messages.

From-SVN: r88494
2004-10-04 16:56:27 +02:00
Arnaud Charlet
15ce9ca22b [multiple changes]
2004-07-06  Vincent Celier  <celier@gnat.com>

	* vms_conv.ads: Minor reformatting.
	Alphabetical order for enumerated values of type Command_Type, to have
	the command in alphabetical order for the usage.

	* vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
	the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).

	* gnat_ugn.texi: Document new switch -dn for the GNAT driver.

	* makegpr.adb (Global_Archive_Exists): New global Boolean variable
	(Add_Archive_Path): Only add the global archive if there is one.
	(Build_Global_Archive): Set Global_Archive_Exists depending if there is
	or not any object file to put in the global archive, and don't build
	a global archive if there is none.
	(X_Switches): New table
	(Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
	in the X_Switches table, if any.
	(Initialize): Make sure the X_Switches table is empty
	(Scan_Arg): Record -X switches in table X_Switches

	* opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.

	* make.adb: Minor comment fix

	* gnatname.adb (Gnatname): When not on VMS, and gnatname has been
	invoked with directory information, add the directory in front of the
	path.

	* gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
	invoked with directory information, add the directory in front of the
	path.

	* gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
	when Keep_Temporary_Files is False.
	(GNATCmd): When not on VMS, and the GNAT driver has been invoked with
	directory information, add the directory in front of the path.
	When not on VMS, handle new switch -dn before the command to set
	Keep_Temporary_Files to True.
	(Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
	everywhere.

	* gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
	invoked with directory information, add the directory in front of the
	path.

2004-07-06  Thomas Quinot  <quinot@act-europe.fr>

	* snames.ads, snames.adb (Name_Stub): New name for the distributed
	systems annex.

	* rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
	New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.

	* g-socket.adb (To_Timeval): Fix incorrect conversion of
	Selector_Duration to Timeval for the case of 0.0.

	* exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
	documentation from Evolve_And_Then.

2004-07-06  Jose Ruiz  <ruiz@act-europe.fr>

	* s-taprop-tru64.adb, s-taprop-os2.adb,
	s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.

2004-07-06  Robert Dewar  <dewar@gnat.com>

	* s-osinte-hpux.ads, s-osinte-freebsd.ads,
	s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
	s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
	s-interr-sigaction.adb, s-taprop-irix-athread.adb,
	s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
	s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
	s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
	s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
	a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
	a-tags.ads, bindgen.ads, checks.adb, checks.adb,
	csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
	exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
	g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
	i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
	sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
	sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
	sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
	s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
	s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
	s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
	vms_data.ads: Minor reformatting,
	Fix bad box comment format.

	* gnat_rm.texi: Fix minor grammatical error

	* sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values

	* sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
	more cases of discriminated records to be recognized as not needing a
	secondary stack.
	(Has_Access_Values): New function.

	* snames.h, snames.adb, snames.ads: New attribute Has_Access_Values

	* cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
	Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
	with LRM terminology).
	Change terminology in comments primitive type => elementary type.

2004-07-06  Ed Schonberg  <schonberg@gnat.com>

	PR ada/15602
	* sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
	parameters do not impose any requirements on the presence of a body.

2004-07-06  Ed Schonberg  <schonberg@gnat.com>

	PR ada/15593
	* sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
	compilation unit and is in an open scope at the point of instantiation,
	assume that a body may be present later.

2004-07-06  Ed Schonberg  <schonberg@gnat.com>

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
	Improve error message when specified size is not supported.

	* sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
	is never a primitive operation.

From-SVN: r84152
2004-07-06 15:57:33 +02:00
Arnaud Charlet
0da2c8ac77 revert: [multiple changes]
2004-06-25  Pascal Obry  <obry@gnat.com>

	* makegpr.adb (Build_Library): Remove parameter Lib_Address and
	Relocatable from Build_Dynamic_Library call.

	* gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
	Relocatable are now synonym.

	* Makefile.in: Use s-parame-mingw.adb on MingW platform.

	* mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
	Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
	call.

	* mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
	Lib_Address and Relocatable.
	(Default_DLL_Address): Removed.

	* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
	mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
	mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
	(Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
	(Default_DLL_Address): Removed.

	* mlib-tgt-mingw.adb: Ditto.
	(Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.

	* s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
	the initial thread stack size.

	* a-strmap.ads: Move package L to private part as it is not used in
	the spec. Found while reading code.

2004-06-25  Olivier Hainque  <hainque@act-europe.fr>

	* tracebak.c: Introduce support for a GCC infrastructure based
	implementation of __gnat_backtrace.

	* raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
	any more. Use accessors instead. This eases maintenance and relaxes
	some alignment constraints.
	(_GNAT_Exception structure): Remove the Ada specific fields
	(EID_For, Adjust_N_Cleanups_For): New accessors, exported by
	a-exexpr.adb.
	(is_handled_by, __gnat_eh_personality): Replace component references to
	exception structure by use of the new accessors.

	* init.c (__gnat_initialize): Adjust comments to match the just
	reverted meaning of the -static link-time option.

	* adaint.c (convert_addresses): Arrange not to define a stub for
	mips-irix any more, as we now want to rely on a real version from a
	recent libaddr2line.

	* a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
	the personality routine can use them and not have to rely on a C
	counterpart of the record anymore. This simplifies maintenance and
	relaxes the constraint of having Standard'Maximum_Alignment match
	BIGGEST_ALIGNMENT.
	Update comments, and add a section on the common header alignment issue.

2004-06-25  Geert Bosch  <bosch@gnat.com>

	* a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
	polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.

2004-06-25  Robert Dewar  <dewar@gnat.com>

	* gnat_rm.texi: Fix section on component clauses to indicate that the
	restriction on byte boundary placement still applies for bit packed
	arrays.
	Add comment on stack usage from Initialize_Scalars

	* gnat_ugn.texi: Add documentation for -gnatyLnnn

	* stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
	limiting nesting level.

	* usage.adb: Add line for -gnatyLnnn switch

	* g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
	sem_ch13.adb, exp_aggr.adb: Minor reformatting

	* sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
	type as well as on the subtype. This corrects a problem in freeze in
	setting alignments of atomic types.

	* sem_eval.ads: Minor comment typo fixed

	* par-util.adb (Push_Scope_Stack): Check for violation of max nesting
	level.  Minor reformatting.

	* fname.adb (Is_Predefined_File_Name): Require a letter after the
	minus sign. This means that file names like a--b.adb will not be
	considered predefined.

	* freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
	record Test new flag and give diagnostic for bad component clause.
	(Freeze_Entity): Set alignment of array from component alignment in
	cases where this is safe to do.

	* exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
	arrays.

	* cstand.adb: (Create_Standard): Set alignment of String to 1

	* einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary

	* exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
	code in the common constrained array cases.

	* a-storio.adb: Change implementation to avoid possible alignment
	problems on machines requiring strict alignment (data should be moved
	as type Buffer, not type Elmt).

	* checks.adb (Apply_Array_Size_Check): Improve these checks by
	killing the overflow checks which we really do not need (64-bits is
	enough).

2004-06-25  Vincent Celier  <celier@gnat.com>

	* makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
	(Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
	inconditionally for the main project.
	(Recursive_Add_Archives.Add_Archive_Path): New procedure
	(Link_Executables.Check_Time_Stamps): New procedure
	(Link_Executables.Link_Foreign): New procedure
	Changes made to reduce nesting level of this package
	(Check): New procedure
	(Add_Switches): When not in quiet output, check that a switch is not
	the concatenation of several valid switches. If it is, issue a warning.
	(Build_Global_Archive): If the global archive is rebuilt, linking need
	to be done.
	(Compile_Sources): Rebuilding a library archive does not imply
	rebuilding the global archive.
	(Build_Global_Archive): New procedure
	(Build_Library): New name for Build_Archive, now only for library
	project
	(Check_Archive_Builder): New procedure
	(Create_Global_Archive_Dependency_File): New procedure
	(Gprmake): Call Build_Global_Archive before linking
	* makegpr.adb: Use Other_Sources_Present instead of Sources_Present
	throughout.
	(Scan_Arg): Display the Copyright notice when -v is used

	* gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
	for gnatls.

	* vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
	COMPILE.
	Add new GNAT LIST qualifier /FILES=
	Added qualifier /DIRECTORY= to GNAT METRIC
	Added qualifier /FILES= to GNAT METRIC
	Added qualifier /FILES to GNAT PRETTY

	* switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
	to take into account both versions of the switch.

	* switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
	always be the last switch to the gcc driver. Disable switch storing so
	that switches automatically added by the gcc driver are not put in the
	ALI file.

	* prj.adb (Project_Empty): Take into account changes in components of
	Project_Data.

	* prj.ads (Languages_Processed): New enumaration value All_Languages.

	* prj.ads (Project_Data): Remove component Lib_Elaboration: never
	used. Split Boolean component Ada_Sources_Present in two Boolean
	components Ada_Sources_Present and Other_Sources_Present.
	Minor reformatting

	* prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
	instead of Sources_Present.
	(Set_Ada_Paths.Add.Recursive_Add): Ditto

	* prj-nmsc.adb: Minor reformatting
	(Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
	(Check_Ada_Naming_Scheme_Validity): New name of previous procedure
	Check_Ada_Naming_Scheme.
	Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
	throughout.

	* prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
	In_Limited.
	Make sure that all cycles where there is at least one "limited with"
	are detected.
	(Parse_Single_Project): New Boolean parameter In_Limited

	* prj-proc.adb (Recursive_Check): When Process_Languages is
	All_Languages, call first Prj.Nmsc.Ada_Check, then
	Prj.Nmsc.Other_Languages_Check.

	* prj-proc.adb (Process): Use Ada_Sources_Present or
	Other_Sources_Present (instead of Sources_Present) depending on
	Process_Languages.

	* lang-specs.h: Keep -g and -m switches in the same order, and as the
	last switches.

	* lib.adb (Switch_Storing_Enabled): New global Boolean flag
	(Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
	False.
	(Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
	False.

	* lib.ads (Disable_Switch_Storing): New procedure.

	* make.adb: Modifications to reduce nesting level of this package.
	(Check_Standard_Library): New procedure
	(Gnatmake.Check_Mains): New procedure
	(Gnatmake.Create_Binder_Mapping_File): New procedure
	(Compile_Sources.Compile): Add switch -gnatez as the last option
	(Display): Never display -gnatez

	* Makefile.generic:
	When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)

	* gnatcmd.adb (Check_Project): New function
	(Process_Link): New procedure to reduce nesting depth
	(Check_Files): New procedure to reduce the nesting depth.
	For GNAT METRIC, include the inherited sources in extending projects.
	(GNATCmd): When GNAT LS is invoked with a project file and no files,
	add the list of files from the sources of the project file. If this list
	is too long, put it in a temp text files and use switch -files=
	(Delete_Temp_Config_Files): Delete the temp text file that contains
	a list of source for gnatpp or gnatmetric, if one has been created.
	(GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
	in the project file is too large, create a temporary text file that
	list them and pass it to the tool with "-files=<temp text file>".
	(GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch

	* gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
	generated file is in not in Ada.

	* gnatls.adb: Remove all parameters And_Save that are no longer used.
	(Scan_Ls_Arg): Add processing for -files=
	(Usage): Add line for -files=

	* g-os_lib.adb (On_Windows): New global constant Boolean flag
	(Normalize_Pathname): When on Windows and the path starts with a
	directory separator, make sure that the resulting path will start with
	a drive letter.

	* clean.adb (Clean_Archive): New procedure
	(Clean_Project): When there is non-Ada code, delete the global archive,
	the archive dependency files, the object files and their dependency
	files, if they exist.
	(Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.

2004-06-25  Thomas Quinot  <quinot@act-europe.fr>

	* sinfo.ads: Fix typo in comment.

	* sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
	the TSS for remote access-to-subprogram types, since these TSS are
	always present once the type has been analyzed.
	(RAS_E_Dereference): Same.

	* sem_attr.adb (Analyze_Attribute): When analysis of an attribute
	reference raises Bad_Attribute, mark the reference as analyzed so the
	node (and any children resulting from rewrites that could have occurred
	during the analysis that ultimately failed) is not analyzed again.

	* exp_ch7.ads (Find_Final_List): Fix misaligned comment.

	* exp_dist.adb: Minor comment fix.

	* exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
	type is an anonymous access type, no unchecked deallocation of the
	allocated object can occur. If the object is controlled, attach it with
	a count of 1. This allows attachment to the Global_Final_List, if
	no other relevant list is available.
	(Get_Allocator_Final_List): For an anonymous access type that is
	the type of a discriminant or record component, the corresponding
	finalisation list is the one of the scope of the type.

2004-06-25  Ed Schonberg  <schonberg@gnat.com>

	* sem_ch3.adb (Replace_Type): When computing the signature of an
	inherited subprogram, use the first subtype if the derived type
	declaration has no constraint.

	* exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
	before applying previous optimization. Minor code cleanup.

	* exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
	placed at the beginning of an unpacked record without explicit
	alignment, a slice of it will be aligned and does not need a copy when
	used as an actual.

2004-06-25  Ed Schonberg  <schonberg@gnat.com>

	PR ada/15591
	PR ada/15592
	* sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
	reference is written with expressions mimicking parameters.

2004-06-25  Hristian Kirtchev  <kirtchev@gnat.com>

	PR ada/15589
	* sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
	STEP 2a. The constraints of a full type declaration of a derived record
	type are checked for conformance with those declared in the
	corresponding private extension declaration. The message
	"not conformant with previous declaration" is emitted if an error is
	detected.

2004-06-25  Vasiliy Fofanov  <fofanov@act-europe.fr>

	* g-traceb.ads: Document the need for -E binder switch in the spec.

	* g-trasym.ads: Document the need for -E binder switch in the spec.

2004-06-25  Jose Ruiz  <ruiz@act-europe.fr>

	* sem_prag.adb: Add handling of pragma Detect_Blocking.

	* snames.h, snames.ads, snames.adb: Add entry for pragma
	Detect_Blocking.

	* s-rident.ads: Change reference to pragma Detect_Blocking.

	* targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
	system.ads.

	* opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
	to indicate whether pragma Detect_Blocking is active.

	* par-prag.adb: Add entry for pragma Detect_Blocking.

	* rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
	of not handling WITH.
	Note that this replaces the previous update which was incorrect.

2004-06-25  Javier Miranda  <miranda@gnat.com>

	* sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
	use-clauses to have a clean environment.

	* sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
	the installation of the use-clauses to stablish a clean environment in
	case of compilation of a separate unit; otherwise the call to
	use_one_package is protected by the barrier Applicable_Use.

	* sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
	the installation of the use-clauses to stablish a clean environment in
	case of compilation of a separate unit.
	(End_Use_Clauses): Minor comment cleanup.

2004-06-25  Sergey Rybin  <rybin@act-europe.fr>

	* gnat_ugn.texi: Add description of the gnatpp 'files' switch

From-SVN: r83658
2004-06-25 18:39:33 +02:00
Arnaud Charlet
aa720a546a [multiple changes]
2004-05-05  Emmanuel Briot  <briot@act-europe.fr>

	* g-os_lib.ads (Invalid_Time): New constant

	* adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
	return OS_Time instead of time_t to match what is imported by Ada.
	Now return -1 if the file doesn't exist, instead of a random value

2004-05-05  Robert Dewar  <dewar@gnat.com>

	* usage.adb: Add line for -gnatR?s switch

	* sem_ch13.adb, exp_ch2.adb: Minor reformatting

	* g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
	and for Match (Data_First, Data_last)

	* lib-writ.adb (Write_With_Lines): Ensure that correct index number is
	written when we are dealing with multi-unit files.

2004-05-05  Jerome Guitton  <guitton@act-europe.fr>

	* Makefile.in: Remove unused targets and variables.

2004-05-05  Vincent Celier  <celier@gnat.com>

	* switch-m.adb: New gnatmake switch -eI

	* vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
	of new gnatmake switch -eInnn.

	* makegpr.adb: Take into account new parameters Index and Src_Index in
	Prj.Util.

	* clean.adb: Implement support for multi-unit sources, including new
	switch -i.

	* gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
	Src_Index.

	* make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
	(Extract_From_Q): New out parameter Index
	(Mark, Is_Marked): Subprograms moved to Makeutl
	(Switches_Of): New parameter Source_Index
	(Add_Switch): New parameter Index
	(Check): New parameter Source_Index
	(Collect_Arguments): New parameter Source_Index
	(Collect_Arguments_And_Compile): New parameter Source_Index
	(Compile): New parameter Source_Index
	Put subprograms in alphabetical order
	Add support for multi-source sources, including in project files.

	* makeutl.ads, makeutl.adb (Unit_Index_Of): New function
	(Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
	Make.

	* makeusg.adb: New gnatmake switch -eInnn

	* mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
	Prj.Util.Value_Of.

	* opt.ads (Main_Index): New variable, defaulted to 0.

	* osint.ads, osinte.adb (Add_File): New parameter Index
	(Current_Source_Index): New function

	* prj.adb: Take into account new components Index and Src_Index

	* prj.ads (String_Element): New component Index
	(Variable_Value): New component Index
	(Array_Element): New component Src_Index

	* prj-attr.adb: Indicate that optional index may be specified for
	attributes Main, Executable, Spec, Body and some of Switches.

	* prj-attr.ads (Attribute_Kind): New values for optional indexes
	(Attribute_Record): New component Optional_Index

	* prj-com.ads (File_Name_Data): New component Index

	* prj-dect.adb (Parse_Attribute_Declaration): Process optional index

	* prj-env.adb (Put): Output optional index

	* prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
	attributes Spec and Body.

	* prj-nmsc.adb: Process optional indexes

	* prj-pp.adb: Ouput "at" for optional indexes

	* prj-proc.adb: Take into account optional indexes

	* prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
	Optional_Index. For string literal,
	process optional index when Optional_Index is True.
	(Parse_Expresion): New Boolean parameter Optional_Index

	* prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
	(Set_Source_Index_Of): New procedure

	* prj-util.adb (Executable_Of, Value_Of): Take into account optional
	index.

	* prj-util.ads (Executable_Of): New parameter Index
	(Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
	New parameter Src_Index, defaulted to 0.

2004-05-05  Ed Schonberg  <schonberg@gnat.com>

	PR ada/15257
	* sem_ch3.adb (Access_Definition): If this is an access parameter
	whose designated type is imported through a limited_with clause, do
	not add the enclosing subprogram to the list of private dependents of
	the type.

2004-05-05  Ed Schonberg  <schonberg@gnat.com>

	PR ada/15258
	* sem_ch6.adb (Base_Types_Match): True if one type is imported through
	a limited_with clause, and the other is its non-limited view.

2004-05-05  Thomas Quinot  <quinot@act-europe.fr>

	* cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.

	* exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
	exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
	Stand.Boolean_Literals to produce references to entities
	Standard_False and Standard_True from compile-time computed boolean
	values.

	* stand.ads (Boolean_Literals): New variable, provides the entity
	values for False and True, for use by the expander.

2004-05-05  Doug Rupp  <rupp@gnat.com>

	* 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
	5vinmaop.adb: Unchecked convert Short_Address vice Address

	* adaint.c, raise.c: Caste CRTL function return value
	to avoid gcc error on 32/64 bit IVMS.

	* Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
	target = IA64/VMS.

	* init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.

	* 5qsystem.ads (Address): Declare as Long_Integer
	(Short_Address): Declare as 32 bit subtype of Address
	Declare  abstract address operations to avoid gratuitous ambiguities.

2004-05-05  Jose Ruiz  <ruiz@act-europe.fr>

	* gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
	instead of the old Boolean_Entry_Barriers.
	Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.

2004-05-05  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r81519
2004-05-05 12:09:56 +02:00
Arnaud Charlet
9f4fd324ab [multiple changes]
2004-05-03  Olivier Hainque  <hainque@act-europe.fr>

	PR ada/15152

	* exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
	alone. Replacing object references by literals is inappropriate in a
	so low level context.

2004-05-03  Arnaud Charlet  <charlet@act-europe.fr>

	* a-exexpr.adb: Add comments

2004-05-03  Joel Brobecker  <brobecker@gnat.com>

	* a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
	declare the Ancestor_Tags array in Type_Specific_Data with a small size
	without risking a bounds check error when accessing one of its
	components.
	(Type_Specific_Data): Define Ancestor_Tags as a small array.
	This prevents us from hitting a limitation during the debug info
	generation when using stabs.

	* a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
	small array.
	This prevents us from hitting a limitation during the debug info
	generation when using stabs.

2004-05-03  Eric Botcazou  <ebotcazou@act-europe.fr>

	lang-specs.h: Remove -gnatz* from specs.

2004-05-03  Vincent Celier  <celier@gnat.com>

	* gprmake.adb, makegpr.ads, makegpr.adb: New files.

	* Make-lang.in, Makefile.in: Add gprmake

2004-05-03  Thomas Quinot  <quinot@act-europe.fr>

	* sem_aggr.adb: Fix typo in comment.

2004-05-03  Robert Dewar  <dewar@gnat.com>

	* make.adb: Minor reformatting

	* rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function

	* sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
	so that it works when address is not a private type.

	* sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
	properly with rewritten unchecked conversions. This prevents
	order-of-elaboration issues that can otherwise arise.
	(Minimum_Size): Don't check size of access types under VMS

	* sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
	interpretations of integer literals as type System.Address.

	* sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
	(Is_Descendent_Of): New function

2004-05-03  Jose Ruiz  <ruiz@act-europe.fr>

	* sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
	Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
	No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.

	* sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
	of the old Max_Entry_Queue_Depth.

	* snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
	Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
	No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment

	* snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
	New entry for proper handling of Max_Entry_Queue_Depth.
	New entry for proper handling of No_Dynamic_Interrupts.

	* s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
	supersedes the GNAT specific restriction Boolean_Entry_Barriers.
	Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
	the GNAT specific restriction Max_Entry_Queue_Depth.
	Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
	the GNAT specific restriction No_Dynamic_Interrupts.

	* restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
	instead of the old Boolean_Entry_Barriers.
	Use the new restriction No_Dynamic_Attachment instead of the old
	No_Dynamic_Interrupts.

	* exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
	supersedes the GNAT specific restriction Boolean_Entry_Barriers.

	* gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
	of the old Max_Entry_Queue_Depth.

2004-05-03  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r81429
2004-05-03 13:58:34 +02:00
Arnaud Charlet
e6f6961425 [multiple changes]
2004-03-15  Jerome Guitton  <guitton@act-europe.fr>

	* 3zsoccon.ads: Fix multicast options.

	* s-thread.ads: Move unchecked conversion from ATSD_Access to Address
	in the spec.

2004-03-15  Robert Dewar  <dewar@gnat.com>

	* sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
	pragma used for a private type.

	* lib-xref.adb (Generate_Reference): Do not generate warning if
	reference is in a different unit from the pragma Unreferenced.

	* 5vtpopde.adb: Minor reformatting
	Fix casing of To_Task_ID

	* sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
	flag if we have an unchecked conversion to an access type in the same
	unit.

2004-03-15  Geert Bosch  <bosch@gnat.com>

	* a-ngcoty.adb (Modulus): In alternate formula for large real or
	imaginary parts, use Double precision throughout.

	* a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
	we want to be able to compile run-time with -gnata for testing, but
	this may also be instantiated in user code that is compiled with -gnata.

2004-03-15  Olivier Hainque  <hainque@act-europe.fr>

	* s-stalib.ads (Exception_Code): New type, to represent Import/Export
	codes. Having a separate type for this is useful to enforce consistency
	throughout the various run-time units.
	(Exception_Data): Use Exception_Code for Import_Code.

	* s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
	Natural and Integer in various places.
	(Register_VMS_Exception): Use Base_Code_In to compute the exception code
	with the severity bits masked off.
	(Register_VMS_Exception): Handle the additional exception data pointer
	argument.

	* raise.c (_GNAT_Exception structure): Remove the handled_by_others
	component, now reflected by an exported accessor.
	(is_handled_by): New routine to compute whether the propagated
	occurrence matches some handler choice specification. Extracted out of
	get_action_description_for, and expanded to take care of the VMS
	specifities.
	(get_action_description_for): Use is_handled_by instead of an explicit
	complex condition to decide if the current choice at hand catches the
	propagated occurrence.

	* raise.h (Exception_Code): New type for C.

	* rtsfind.ads (RE_Id, RE_Unit_Table): Add
	System.Standard_Library.Exception_Code, to allow references from the
	pragma import/export expander.

	* a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
	New accessors to allow easy access to GNAT exception data
	characteristics.
	(GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
	redundant Handled_By_Others component, helper for the personality
	routine which will now be able to call the appropriate exception data
	accessor instead.

	* cstand.adb (Create_Standard): Adjust the type of the Import_Code
	component of Standard_Exception_Type to be the closest possible to
	Exception_Code in System.Standard_Library, that we cannot get at this
	point. Expand a ??? comment to notify that this type node should
	probably be rewritten later on.

	* exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
	registration call to include a pointer to the exception object in the
	arguments.

	* init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
	instead of int and explicit bitmasks.

2004-03-15  Vincent Celier  <celier@gnat.com>

	* vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
	equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.

	* a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
	longer needed now that it is in the spec of
	System.Tasking.Task_Attributes.

	* adaint.h, adaint.c: (__gnat_create_output_file): New function

	* gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =

	* g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.

	* make.adb (Gnatmake): Do not check the executable suffix; it is being
	taken care of in Scan_Make_Arg.
	(Scan_Make_Arg): Add the executable suffix only if the argument
	following -o, in canonical case, does not end with the executable
	suffix.  When in verbose mode and executable file name does not end
	with executable suffix, output the executable name, in canonical case.

	* s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
	to avoid warnings when instantiating Ada.Task_Attributes.
	Minor reformating.

	* mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
	in the correct order.

	* prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
	redirect standard output and error to a file for the invocation of the
	compiler, then read the file.

	* prj-nmsc.adb (Find_Sources): Use the Display_Value for each
	directory, instead of the Value.
	(Find_Source_Dirs): Remove useless code & comments.

2004-03-15  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
	tagged type is inherited, and the parent operation is not frozen yet,
	force generation of a freeze node for the inherited operation, so the
	corresponding dispatch entry is properly initialized.
	(Make_Predefined_Primitive_Specs): Check that return type is Boolean
	when looking for user-defined equality operation.

	* exp_ch4.adb (Expand_Composite_Equality): Check that return type is
	boolean when locating primitive equality of tagged component.

	* exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
	bit-aligned field and the right-hand side a string literal, introduce
	a temporary before expanding assignment into a loop.

	* exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
	priority in full, to ensure that any expanded subepxressions of it are
	elaborated in the scope of the init_proc.

	* exp_prag.adb (Expand_Pragma_Import): Search for initialization call
	after object declaration, skipping over code that may have been
	generated for validity checks.

	* sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
	discriminants, ignore the known discriminants of its full view, if
	any, to check legality.

	* sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
	component if type has unknown discriminants.
	(Analyze_Private_Extension_Declaration): Discriminant constraint is
	null if type has unknown discriminants.

	* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
	for end label when present.

	* s-fileio.adb (Open): When called with a C_Stream, use given name for
	temporary file, rather than an empty string.

2004-03-15  Ed Falis  <falis@gnat.com>

	* s-thread.adb: Removed, no longer used.

2004-03-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* decl.c (target.h): Now include.
	(gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
	in new build_pointer_from_mode calls for non-fat/non-thin pointer.
	(validate_size): For POINTER_TYPE, get smallest size permitted on
	machine.

	* fe.h: Sort Einfo decls and add Set_Mechanism.

	* Makefile.in: (LIBGNAT_SRCS): Remove types.h.
	(ada/decl.o): Depends on target.h.

	* trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
	FUNCTION_BOUNDARY; always use TYPE_ALIGN.

2004-03-15  Thomas Quinot  <quinot@act-europe.fr>

	* 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.

	* exp_ch4.adb (Expand_N_Indexed_Component): Do not call
	Insert_Dereference_Action when rewriting an implicit dereference into
	an explicit one, this will be taken care of during expansion of the
	explicit dereference.
	(Expand_N_Slice): Same. Always do the rewriting, even for the case
	of non-packed slices, since the dereference action generated by
	expansion of the explicit dereference is needed in any case.
	(Expand_N_Selected_Component): When rewriting an implicit dereference,
	analyze and resolve the rewritten explicit dereference so it is seen
	by the expander.
	(Insert_Dereference_Action): This procedure is now called only for the
	expansion of an N_Explcit_Dereference_Node. Do insert a check even for
	dereferences that do not come from source (including explicit
	dereferences resulting from rewriting implicit ones), but do not
	recursively insert a check for the dereference nodes contained within
	the check.
	(Insert_Dereference_Action): Clarify and correct comment.

From-SVN: r79494
2004-03-15 15:51:00 +01:00
Arnaud Charlet
8a6a52dcb9 [multiple changes]
2004-03-05  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* trans.c: Reflect GCC changes to fix bootstrap problem.
	Add warning for suspicious aliasing unchecked conversion.

2004-03-05  Robert Dewar  <dewar@gnat.com>

	* 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions

	* a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
	i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
	5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
	5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
	unchecked conversion to spec to avoid warnings.

	* s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
	to Task_ID

	* 7stpopsp.adb: Correct casing in To_Task_ID call

	* a-strsea.ads, a-strsea.adb: Minor reformatting

	* einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing

	* errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
	Adjust Max_Msg_Length to be clearly large enough.

	* fe.h: Define In_Same_Source_Unit

	* osint.adb: Add pragma Warnings Off to suppress warnings
	* g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
	aliasing warnings.

	* opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing

	* par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma

	* sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.

	* sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.

	* sem_prag.adb: Implement pragma No_Strict_Aliasing.

	* sinfo.ads: Remove obsolete comment on validate unchecked conversion
	node. We now do generate them for gcc back end.

	* table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
	warning.

	* sinput-c.adb: Fix bad name in header.
	Add pragma Warnings Off to suppress aliasing warning.

	* sinput-l.adb: Add pragma Warnings Off to suppress aliasing warning.

	* snames.h, snames.ads, snames.adb: Add entry for pragma
	No_Strict_Aliasing.

2004-03-05  Vincent Celier  <celier@gnat.com>

	* prj-com.ads: Add hash table Files_Htable to check when a file name
	is already a source of another project.

	* prj-nmsc.adb (Record_Source): Before recording a new source, check
	if its file name is not already a source of another project. Report an
	error if it is.

	* gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
	source file name, call gnatpp with all the sources of the main project.

	* vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
	of file names.

	* vms_data.ads: Correct documentation of new /OPTIMIZE keyword
	NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
	/RUNTIME_SYSTEM=, converted to --RTS=
	/NOTABS, converted to -notabs

2004-03-05  Pascal Obry  <obry@gnat.com>

	* make.adb: Minor reformatting.

2004-03-05  Ed Schonberg  <schonberg@gnat.com>

	Part of implemention of AI-262.
	* par-ch10.adb (P_Context_Clause): Recognize private with_clauses.

	* sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
	procedure.

	* sem_ch3.adb (Analyze_Component_Declaration): Improve error message
	when component type is a partially constrained class-wide subtype.
	(Constrain_Discriminated_Type): If parent type has unknown
	discriminants, a constraint is illegal, even if full view has
	discriminants.
	(Build_Derived_Record_Type): Inherit discriminants when deriving a type
	with unknown discriminants whose full view is a discriminated record.

	* sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
	flag, to handle properly derivations of tagged types with unknown
	discriminants.
	(Analyze_Package_Spec, Analyze_Package_Body): Install
	Private_With_Clauses before analyzing private part or body.

	* einfo.ads: Indicate that both Has_Unknown_Discriminants and
	Has_Discriminants can be true for a given type (documentation).

2004-03-05  Arnaud Charlet  <charlet@act-europe.fr>

	* s-restri.ads: Fix license (GPL->GMGPL).

	* s-tassta.adb: Minor reformatting.

	* s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
	by calls to Exit_One_ATC_Level, since additional clean up is performed
	by this function.

	* s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
	by calls to Exit_One_ATC_Level, since additional clean up is performed
	by this function.

2004-03-05  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r78964
2004-03-05 11:58:59 +01:00
Arnaud Charlet
b7e429ab79 [multiple changes]
2004-01-23  Robert Dewar  <dewar@gnat.com>

	* exp_aggr.adb: Minor reformatting

	* exp_ch9.adb: Minor code clean up
	Minor reformatting
	Fix bad character in comment

	* targparm.adb (Get_Target_Parameters): Give clean abort error on
	unexpected end of file, along with more detailed message.

2004-01-23  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
	PAT.

	* decl.c (copy_alias_set): New function.
	(gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.

2004-01-23  Doug Rupp  <rupp@gnat.com>

	* Makefile.in (install-gnatlib): Change occurrences of lib$$file to
	lib$${file} in case subsequent character is not a separator.

2004-01-23  Vincent Celier  <celier@gnat.com>

	* 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
	when the GCC version is at least 3.

	* make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
	Remove all "Opt.", to prepare for opt split

	* prj-part.adb (Parse_Single_Project): New Boolean out parameter
	Extends_All. Set to True when the project parsed is an extending all
	project. Fails for importing an extending all project only when the
	imported project is an extending all project.
	(Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
	depending on the value of Extends_All returned.

	* prj-proc.adb (Process): Check that no project shares its object
	directory with a project that extends it, directly or indirectly,
	including a virtual project.
	Check that no project extended by another project shares its object
	directory with another also extended project.

	* prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
	Kind = N_With_Clause

	* prj-tree.ads: Minor reformatting
	Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).

2004-01-23  Ed Schonberg  <schonberg@gnat.com>

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
	applies to a type with an incomplete view, use full view in Name of
	clause, for consistency with uses of Get_Attribute_Definition_Clause.

2004-01-23  Arnaud Charlet  <charlet@act-europe.fr>

	* 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
	SCHED_RR, since other values are not supported by this policy.
	(Initialize): Move initialization of mutex attribute to package
	elaboration, to prevent early access to this variable.

	* Makefile.in: Remove mention of Makefile.adalib, unused.

	* Makefile.adalib: Removed, unused.

From-SVN: r76403
2004-01-23 11:30:04 +01:00
Arnaud Charlet
81a5b587ef [multiple changes]
2003-11-26  Thomas Quinot  <quinot@act-europe.fr>

	* g-socket.ads, g-socket.adb:
	Clarify documentation of function Stream. Introduce a Free procedure
	to release the returned Stream once it becomes unused.

	* 5asystem.ads: For Alpha Tru64, enable ZCX by default.

2003-11-26  Arnaud Charlet  <charlet@act-europe.fr>

	(Cond_Timed_Wait): Introduce new constant Time_Out_Max,
	since NT 4 cannot handle timeout values that are too large,
	e.g. DWORD'Last - 1.

2003-11-26  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch4.adb:
	(Expand_N_Slice): Recognize all cases of slices that appear as actuals
	in procedure calls and whose expansion must be deferred.

	* exp_ch6.adb (Add_Call_By_Copy_Node): Remove previous fix. Proper fix
	is in exp_ch4.

	* sem_ch3.adb:
	(Build_Derived_Array_Type): Create operator for unconstrained type
	if ancestor is unconstrained.

2003-11-26  Vincent Celier  <celier@gnat.com>

	* make.adb (Project_Object_Directory): New global variable
	(Change_To_Object_Directory): New procedure
	(Collect_Arguments_And_Compile): Call Change_To_Object_Directory instead
	of Change_Dir directly. Do not change working directory to object
	directory of main project after each compilation.
	(Gnatmake): Use Change_To_Object_Directory instead of Change_Dir
	directly.
	Change to object directory of main project before binding step.
	(Initialize): Initialize Project_Object_Directory to No_Project

	* mlib-prj.adb:
	(Build_Library): Take into account Builder'Default_Switches ("Ada") when
	binding a Stand-Alone Library.

	* output.adb: Update Copyright notice
	(Write_Char): Output buffer when full

2003-11-26  Robert Dewar  <dewar@gnat.com>

	* sem_ch13.adb: (Check_Size): Reset size if size is too small

	* sem_ch13.ads:
	(Check_Size): Fix documentation to include bit-packed array case

	* sem_res.adb: Implement restriction No_Direct_Boolean_Operators

	* s-rident.ads: Put No_Direct_Boolean_Operators in proper order

	* s-rident.ads: Add new restriction No_Direct_Boolean_Operators

From-SVN: r73991
2003-11-27 12:40:45 +01:00
Arnaud Charlet
d05ef0ab60 [multiple changes]
2003-11-17  Jerome Guitton  <guitton@act-europe.fr>

	* 5zthrini.adb: Remove the call to Init_RTS at elaboration, as it is
	already called in System.Threads.

	* 5ztiitho.adb (Initialize_Task_Hooks): Remove the registration of the
	environment task, as it has been moved to System.Threads.Initialization.

2003-11-17  Arnaud Charlet  <charlet@act-europe.fr>

	* adaint.c (__gnatlib_install_locks): Only reference
	__gnat_install_locks on VMS, since other platforms can avoid using
	--enable-threads=gnat

2003-11-17  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* ada-tree.h: (TYPE_IS_PACKED_ARRAY_TYPE_P): New macro.

	* decl.c (gnat_to_gnu_entity, case E_Array_Subtype): Set
	TYPE_PACKED_ARRAY_TYPE_P.
	(validate_size): Do not verify size if TYPE_IS_PACKED_ARRAY_TYPE_P.

	Part of PR ada/12806
	* utils.c (float_type_for_precision): Renamed from float_type_for_size.
	Use GET_MODE_PRECISION instead of GET_MODE_BITSIZE.

2003-11-17  Vincent Celier  <celier@gnat.com>

	* gnatchop.adb (Error_Msg): New Boolean parameter Warning, defaulted
	to False.
	Do not set exit status to Failure when Warning is True.
	(Gnatchop): Make errors "no compilation units found" and
	"no source files written" warnings only.

	* make.adb (Gnatmake): When using a project file, set
	Look_In_Primary_Dir to False.
	(Configuration_Pragmas_Switch): Check for Global_Configuration_Pragmas
	and Local_Configuration_Pragmas in the project where they are declared
	not an extending project which might have inherited them.

	* osint.adb (Locate_File): If Name is already an absolute path, do not
	look for a directory.

	* par-ch10.adb (P_Compilation_Unit): If source contains no token, and
	-gnats (Check_Syntax) is used, issue only a warning, not an error.

	* prj.adb (Register_Default_Naming_Scheme): Add new component Project
	in objects of type Variable_Value.

	* prj.ads: (Variable_Value): New component Project

	* prj-nmsc.adb (Ada_Check.Warn_If_Not_Sources): No warning if source
	is in a project extended by Project.

	* prj-proc.adb (Add_Attributes): New parameter Project. Set component
	Project of Variable_Values to this new parameter value.
	(Expression): Set component Project of Variable_Values.
	(Process_Declarative_Items): Call Add_Attributes with parameter Project.
	Set the component Project in array elements.

2003-11-17  Sergey Rybin  <rybin@act-europe.fr>

	* errout.adb: (Initialize): Add initialization for error nodes.

	* sem_ch12.adb (Initialize): Add missing initializations for
	Exchanged_Views and Hidden_Entities.

2003-11-17  Ed Schonberg  <schonberg@gnat.com>

	* sem_ch12.adb (Copy_Generic_Node): Preserve entity when copying an
	already instantiated tree for use in subsequent inlining.
	(Analyze_Associations, Instantiate_Formal_Subprogram,
	Instantiate_Object): improve error message for mismatch in
	instantiations.

	* sem_ch6.adb (Build_Body_To_Inline): Major cleanup to handle
	instantiations of subprograms declared in instances.

2003-11-17  Javier Miranda  <miranda@gnat.com>

	* sem_ch4.adb (Analyze_Allocator): Previous modification must be
	executed only under the Extensions_Allowed flag.

2003-11-17  Robert Dewar  <dewar@gnat.com>

	* a-exexda.adb (Address_Image): Fix documentation to indicate leading
	zeroes suppressed.
	(Address_Image): Fix bug of returning 0x instead of 0x0
	Minor reformatting (function specs).

	* einfo.ads: Minor fix for documentation of Is_Bit_Packed_Array
	(missed case of 33-63)

	* freeze.adb, sem_ch13.adb: Properly check size of packed bit array

	* s-thread.adb: Add comments for pragma Restriction

	* exp_aggr.adb, g-debuti.adb, par-ch4.adb, sem_aggr.adb,
	sem_ch6.adb, sprint.adb, xref_lib.adb: Minor reformatting

2003-11-17  Ed Falis  <falis@gnat.com>

	* s-thread.adb: Added No_Tasking restriction for this implementation.

2003-11-17  Emmanuel Briot  <briot@act-europe.fr>

	* xref_lib.adb (Parse_Identifier_Info): Add handling of generic
	instanciation references in the parent type description.

2003-11-17  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r73672
2003-11-17 15:58:17 +01:00
Arnaud Charlet
9596236a48 [multiple changes]
2003-11-10  Ed Falis  <falis@gnat.com>

	* 5ytiitho.adb: (procStartHookAdd): Definition and call deleted

	* 5zinit.adb: (Install_Handler): Moved back to spec
	(Install_Signal_Handlers): Deleted

	* 5zthrini.adb: Added context clause for System.Storage_Elements
	(Register): Only handles creation of taskVar; initialization moved to
	Thread_Body_Enter.
	(Reset_TSD): Deleted; replaced by Thread_Body_Enter
	Added declaration of environment task secondary stack and
	initialization.

	* s-thread.adb: Implement bodies for thread body processing

	* s-thread.ads:
	Added comment identifying supported targets for pragma Thread_Body.

2003-11-10  Pascal Obry  <obry@gnat.com>

	* adaint.c (_gnat_stat) [WIN32]: Check if name is not bigger than
	GNAT_MAX_PATH_LEN.

	* s-fileio.adb:
	(Open): Properly check for string length before copying into the buffer.
	Raises Name_Error if buffer is too small. Note that this was a potential
	buffer overflow.

2003-11-10  Arnaud Charlet  <charlet@act-europe.fr>

	* bindgen.adb, comperr.adb: Code clean ups.
	* gnatvsn.ads, gnatvsn.adb (Get_Gnat_Version_Type): New function.

2003-11-10  Sergey Rybin  <rybin@act-europe.fr>

	* gnat1drv.adb: Add call to Sem_Elim.Initialize.

2003-11-10  Vincent Celier  <celier@gnat.com>

	* gprcmd.adb:
	(Gprcmd): Add new command "prefix" to get the prefix of the GNAT
	installation.

	* make.adb (Scan_Make_Arg): Transmit -nostdlib to the compiler

	* prj.adb: (Project_Empty): Add new boolean component Virtual

	* prj.ads: (Virtual_Prefix): New constant string
	(Project_Data): New boolean component Virtual

	* prj-nmsc.adb (Language_Independent_Check): Adjust error message when
	a library project is extended by a virtual extending project.

	* prj-part.adb:
	Modifications throughout to implement extending-all project, including:
	(Virtual_Hash, Processed_Hash): New hash tables
	(Create_Virtual_Extending_Project): New procedure
	(Look_For_Virtual_Projects_For): New procedure

	* prj-proc.adb:
	(Process): After checking the projects, if main project is an
	extending-all project, set the object directory of all virtual extending
	project to the object directory of the main project.
	Adjust error message when a virtual extending project has the same
	object directory as an project being extended.
	(Recursive_Process): If name starts with the virtual prefix, set Virtual
	to True in the project data.

	* prj-tree.adb:
	(Default_Project_Node): Add new boolean component Extending_All
	(Is_Extending_All): New function
	(Set_Is_Extending_All): New procedure

	* prj-tree.ads: (Is_Extending_All): New function
	(Set_Is_Extending_All): New procedure
	(Project_Node_Record): New boolean component Extending_All

	* switch-c.adb: (Scan_Front_End_Switches): Process -nostdlib

	* vms_data.ads:
	Add qualifier /NOSTD_LIBRARIES (-nostdlib) for the compiler

	* bld.adb (Recursive_Process): If MAKE_ROOT is not defined, call
	"gprcmd prefix" to define it.

2003-11-10  Thomas Quinot  <quinot@act-europe.fr>

	* einfo.ads: Fix a typo and remove an extraneous word in comments.

	* lib-load.adb:
	(Create_Dummy_Package_Unit): Set the scope of the entity for the
	created dummy package to Standard_Standard, not to itself, to
	defend other parts of the front-end against encoutering a cycle in
	the scope chain.

	* sem_ch10.adb:
	(Analyze_With_Clause): When setting the entities for the successive
	N_Expanded_Names that constitute the name of a child unit, do not
	attempt to go further than Standard_Standard in the chain of scopes.
	This case arises from the placeholder units created by
	Create_Dummy_Package_Unit in the case of a with_clause for a
	nonexistent child unit.

2003-11-10  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch6.adb:
	(Expand_Thread_Body): Place subprogram on scope stack, so that new
	declarations are given the proper scope.

	* sem_ch13.adb:
	(Check_Expr_Constants): Reject an expression that contains a constant
	created during expansion, and that appears after the object to which
	the address clause applies.

	* sem_ch5.adb (Check_Controlled_Array_Attribute): Subsidiary of
	Analyze_Iteration_Scheme, to rewrite a loop parameter specification
	that uses 'Range of a function call with controlled components, so
	that the function result can be finalized before starting the loop.

	* sem_ch8.adb:
	(Find_Selected_Component): Improve error message when prefix is
	an implicit dereference of an incomplete type.

2003-11-10  Robert Dewar  <dewar@gnat.com>

	* opt.ads: New Print_Standard flag for -gnatS switch

	* sem_ch13.adb: Remove some additional checks for unaligned arrays

	* cstand.adb (Create_Standard): Print out package standard if -gnatS
	switch set

	* debug.adb: Update doc for -gnatds to discuss relationship with new
	-gnatS flag

	* sinfo.adb: Add new field Entity_Or_Associated_Node

	* sinfo.ads: Add new field Entity_Or_Associated_Node
	Update documentation for Associated_Node and Entity fields to clarify
	relationship and usage.

	* sprint.adb:
	(Write_Id): Properly process Associated_Node field in generic template

	* switch-c.adb:
	Recognize new -gnatS switch for printing package Standard
	This replaces gnatpsta

	* usage.adb:
	Add line for  new -gnatS switch for printing package Standard
	This replaces gnatpsta

From-SVN: r73423
2003-11-10 18:30:00 +01:00
Arnaud Charlet
fbf5a39b3e 3psoccon.ads, [...]: Files added.
2003-10-21  Arnaud Charlet  <charlet@act-europe.fr>

	* 3psoccon.ads, 3veacodu.adb, 3vexpect.adb, 3vsoccon.ads,
	3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb, 3zsoccon.ads,
	3zsocthi.adb, 3zsocthi.ads, 50system.ads, 51system.ads,
	55system.ads, 56osinte.adb, 56osinte.ads, 56taprop.adb,
	56taspri.ads, 56tpopsp.adb, 57system.ads, 58system.ads,
	59system.ads, 5aml-tgt.adb, 5bml-tgt.adb, 5csystem.ads,
	5dsystem.ads, 5fosinte.adb, 5gml-tgt.adb, 5hml-tgt.adb,
	5isystem.ads, 5lparame.adb, 5msystem.ads, 5psystem.ads,
	5sml-tgt.adb, 5sosprim.adb, 5stpopsp.adb, 5tsystem.ads,
	5usystem.ads, 5vml-tgt.adb, 5vsymbol.adb, 5vtraent.adb,
	5vtraent.ads, 5wml-tgt.adb, 5xparame.ads, 5xsystem.ads,
	5xvxwork.ads, 5yparame.ads, 5ytiitho.adb, 5zinit.adb,
	5zml-tgt.adb, 5zparame.ads, 5ztaspri.ads, 5ztfsetr.adb,
	5zthrini.adb, 5ztiitho.adb, 5ztpopsp.adb, 7stfsetr.adb,
	7straces.adb, 7strafor.adb, 7strafor.ads, 7stratas.adb,
	a-excach.adb, a-exexda.adb, a-exexpr.adb, a-exextr.adb,
	a-exstat.adb, a-strsup.adb, a-strsup.ads, a-stwisu.adb,
	a-stwisu.ads, bld.adb, bld.ads, bld-io.adb,
	bld-io.ads, clean.adb, clean.ads, ctrl_c.c,
	erroutc.adb, erroutc.ads, errutil.adb, errutil.ads,
	err_vars.ads, final.c, g-arrspl.adb, g-arrspl.ads,
	g-boubuf.adb, g-boubuf.ads, g-boumai.ads, g-bubsor.adb,
	g-bubsor.ads, g-comver.adb, g-comver.ads, g-ctrl_c.ads,
	g-dynhta.adb, g-dynhta.ads, g-eacodu.adb, g-excact.adb,
	g-excact.ads, g-heasor.adb, g-heasor.ads, g-memdum.adb,
	g-memdum.ads, gnatclean.adb, gnatsym.adb, g-pehage.adb,
	g-pehage.ads, g-perhas.ads, gpr2make.adb, gpr2make.ads,
	gprcmd.adb, gprep.adb, gprep.ads, g-semaph.adb,
	g-semaph.ads, g-string.adb, g-string.ads, g-strspl.ads,
	g-wistsp.ads, i-vthrea.adb, i-vthrea.ads, i-vxwoio.adb,
	i-vxwoio.ads, Makefile.generic, Makefile.prolog, Makefile.rtl,
	prep.adb, prep.ads, prepcomp.adb, prepcomp.ads,
	prj-err.adb, prj-err.ads, s-boarop.ads, s-carsi8.adb,
	s-carsi8.ads, s-carun8.adb, s-carun8.ads, s-casi16.adb,
	s-casi16.ads, s-casi32.adb, s-casi32.ads, s-casi64.adb,
	s-casi64.ads, s-casuti.adb, s-casuti.ads, s-caun16.adb,
	s-caun16.ads, s-caun32.adb, s-caun32.ads, s-caun64.adb,
	s-caun64.ads, scng.adb, scng.ads, s-exnint.adb,
	s-exnllf.adb, s-exnlli.adb, s-expint.adb, s-explli.adb,
	s-geveop.adb, s-geveop.ads, s-hibaen.ads, s-htable.adb,
	s-htable.ads, sinput-c.adb, sinput-c.ads, s-memcop.ads,
	socket.c, s-purexc.ads, s-scaval.adb, s-stopoo.adb,
	s-strcom.adb, s-strcom.ads, s-strxdr.adb, s-rident.ads,
	s-thread.adb, s-thread.ads, s-tpae65.adb, s-tpae65.ads,
	s-tporft.adb, s-traent.adb, s-traent.ads, styleg.adb,
	styleg.ads, styleg-c.adb, styleg-c.ads, s-veboop.adb,
	s-veboop.ads, s-vector.ads, symbols.adb, symbols.ads,
	tb-alvms.c, tb-alvxw.c, tempdir.adb, tempdir.ads,
	vms_conv.ads, vms_conv.adb, vms_data.ads,
	vxaddr2line.adb: Files added. Merge with ACT tree.

	* 4dintnam.ads, 4mintnam.ads, 4uintnam.ads, 52system.ads,
	5dosinte.ads, 5etpopse.adb, 5mosinte.ads, 5qosinte.adb,
	5qosinte.ads, 5qstache.adb, 5qtaprop.adb, 5qtaspri.ads,
	5stpopse.adb, 5uintman.adb, 5uosinte.ads, adafinal.c,
	g-enblsp.adb, io-aux.c, scn-nlit.adb, scn-slit.adb,
	s-exnflt.ads, s-exngen.adb, s-exngen.ads, s-exnlfl.ads,
	s-exnlin.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
	s-expflt.ads, s-expgen.adb, s-expgen.ads, s-explfl.ads,
	s-explin.ads, s-expllf.ads, s-expsfl.ads, s-expsin.ads,
	s-expssi.ads, style.adb: Files removed. Merge with ACT tree.

	* 1ic.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
	3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
	3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
	3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
	4cintnam.ads, 4gintnam.ads, 4hexcpol.adb, 4hintnam.ads,
	4lintnam.ads, 4nintnam.ads, 4ointnam.ads, 4onumaux.ads,
	4pintnam.ads, 4sintnam.ads, 4vcaldel.adb, 4vcalend.adb,
	4vintnam.ads, 4wexcpol.adb, 4wintnam.ads, 4zintnam.ads,
	51osinte.adb, 51osinte.ads, 52osinte.adb, 52osinte.ads,
	53osinte.ads, 54osinte.ads, 5aosinte.adb, 5aosinte.ads,
	5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
	5atpopsp.adb, 5avxwork.ads, 5bosinte.adb, 5bosinte.ads,
	5bsystem.ads, 5cosinte.ads, 5esystem.ads, 5fintman.adb,
	5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
	5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gosinte.ads,
	5gproinf.ads, 5gsystem.ads, 5gtaprop.adb, 5gtasinf.ads,
	5gtpgetc.adb, 5hosinte.adb, 5hosinte.ads, 5hsystem.ads,
	5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
	5itaprop.adb, 5itaspri.ads, 5ksystem.ads, 5kvxwork.ads,
	5lintman.adb, 5lml-tgt.adb, 5losinte.ads, 5lsystem.ads,
	5mvxwork.ads, 5ninmaop.adb, 5nintman.adb, 5nosinte.ads,
	5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
	5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
	5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
	5posprim.adb, 5pvxwork.ads, 5sintman.adb, 5sosinte.adb,
	5sosinte.ads, 5ssystem.ads, 5staprop.adb, 5stasinf.ads,
	5staspri.ads, 5svxwork.ads, 5tosinte.ads, 5vasthan.adb,
	5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
	5vmastop.adb, 5vosinte.adb, 5vosinte.ads, 5vosprim.adb,
	5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
	5vtpopde.ads, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
	5wosprim.adb, 5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads,
	5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
	5zosinte.ads, 5zosprim.adb, 5zsystem.ads, 5ztaprop.adb,
	6vcpp.adb, 6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb,
	7sintman.adb, 7sosinte.adb, 7sosprim.adb, 7staprop.adb,
	7staspri.ads, 7stpopsp.adb, 7straceb.adb, 9drpc.adb,
	a-caldel.adb, a-caldel.ads, a-charac.ads, a-colien.ads,
	a-comlin.adb, adaint.c, adaint.h, ada-tree.def,
	a-diocst.adb, a-diocst.ads, a-direio.adb, a-except.adb,
	a-except.ads, a-excpol.adb, a-exctra.adb, a-exctra.ads,
	a-filico.adb, a-interr.adb, a-intsig.adb, a-intsig.ads,
	ali.adb, ali.ads, ali-util.adb, ali-util.ads,
	a-ngcefu.adb, a-ngcoty.adb, a-ngelfu.adb, a-nudira.adb,
	a-nudira.ads, a-nuflra.adb, a-nuflra.ads, a-reatim.adb,
	a-reatim.ads, a-retide.ads, a-sequio.adb, a-siocst.adb,
	a-siocst.ads, a-ssicst.adb, a-ssicst.ads, a-strbou.adb,
	a-strbou.ads, a-strfix.adb, a-strmap.adb, a-strsea.ads,
	a-strunb.adb, a-strunb.ads, a-ststio.adb, a-stunau.adb,
	a-stunau.ads, a-stwibo.adb, a-stwibo.ads, a-stwifi.adb,
	a-stwima.adb, a-stwiun.adb, a-stwiun.ads, a-tags.adb,
	a-tags.ads, a-tasatt.adb, a-taside.adb, a-teioed.adb,
	a-textio.adb, a-textio.ads, a-tienau.adb, a-tifiio.adb,
	a-tiflau.adb, a-tiflio.adb, a-tigeau.adb, a-tigeau.ads,
	a-tiinau.adb, a-timoau.adb, a-tiocst.adb, a-tiocst.ads,
	atree.adb, atree.ads, a-witeio.adb, a-witeio.ads,
	a-wtcstr.adb, a-wtcstr.ads, a-wtdeio.adb, a-wtedit.adb,
	a-wtenau.adb, a-wtflau.adb, a-wtinau.adb, a-wtmoau.adb,
	bcheck.adb, binde.adb, bindgen.adb, bindusg.adb,
	checks.adb, checks.ads, cio.c, comperr.adb,
	comperr.ads, csets.adb, cstand.adb, cstreams.c,
	debug_a.adb, debug_a.ads, debug.adb, decl.c,
	einfo.adb, einfo.ads, errout.adb, errout.ads,
	eval_fat.adb, eval_fat.ads, exp_aggr.adb, expander.adb,
	expander.ads, exp_attr.adb, exp_ch11.adb, exp_ch13.adb,
	exp_ch2.adb, exp_ch3.adb, exp_ch3.ads, exp_ch4.adb,
	exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
	exp_ch8.adb, exp_ch9.adb, exp_code.adb, exp_dbug.adb,
	exp_dbug.ads, exp_disp.adb, exp_dist.adb, expect.c,
	exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb,
	exp_prag.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb,
	exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb,
	fe.h, fmap.adb, fmap.ads, fname.adb,
	fname.ads, fname-uf.adb, fname-uf.ads, freeze.adb,
	freeze.ads, frontend.adb, g-awk.adb, g-awk.ads,
	g-busora.adb, g-busora.ads, g-busorg.adb, g-busorg.ads,
	g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
	g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
	g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
	g-crc32.adb, g-crc32.ads, g-debpoo.adb, g-debpoo.ads,
	g-debuti.adb, g-debuti.ads, g-diopit.adb, g-diopit.ads,
	g-dirope.adb, g-dirope.ads, g-dyntab.adb, g-dyntab.ads,
	g-except.ads, g-exctra.adb, g-exctra.ads, g-expect.adb,
	g-expect.ads, g-hesora.adb, g-hesora.ads, g-hesorg.adb,
	g-hesorg.ads, g-htable.adb, g-htable.ads, gigi.h,
	g-io.adb, g-io.ads, g-io_aux.adb, g-io_aux.ads,
	g-locfil.adb, g-locfil.ads, g-md5.adb, g-md5.ads,
	gmem.c, gnat1drv.adb, gnatbind.adb, gnatchop.adb,
	gnatcmd.adb, gnatfind.adb, gnatkr.adb, gnatlbr.adb,
	gnatlink.adb, gnatls.adb, gnatmake.adb, gnatmem.adb,
	gnatname.adb, gnatprep.adb, gnatprep.ads, gnatpsta.adb,
	gnatxref.adb, g-os_lib.adb, g-os_lib.ads, g-regexp.adb,
	g-regexp.ads, g-regist.adb, g-regist.ads, g-regpat.adb,
	g-regpat.ads, g-soccon.ads, g-socket.adb, g-socket.ads,
	g-socthi.adb, g-socthi.ads, g-soliop.ads, g-souinf.ads,
	g-speche.adb, g-speche.ads, g-spipat.adb, g-spipat.ads,
	g-spitbo.adb, g-spitbo.ads, g-sptabo.ads, g-sptain.ads,
	g-sptavs.ads, g-table.adb, g-table.ads, g-tasloc.adb,
	g-tasloc.ads, g-thread.adb, g-thread.ads, g-traceb.adb,
	g-traceb.ads, g-trasym.adb, g-trasym.ads, hostparm.ads,
	i-c.ads, i-cobol.adb, i-cpp.adb, i-cstrea.ads,
	i-cstrin.adb, i-cstrin.ads, impunit.adb, init.c,
	inline.adb, interfac.ads, i-pacdec.ads, itypes.adb,
	itypes.ads, i-vxwork.ads, lang.opt, lang-specs.h,
	layout.adb, lib.adb, lib.ads, lib-list.adb,
	lib-load.adb, lib-load.ads, lib-sort.adb, lib-util.adb,
	lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
	link.c, live.adb, make.adb, make.ads,
	Makefile.adalib, Makefile.in, Make-lang.in, makeusg.adb,
	mdll.adb, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb,
	mdll-utl.ads, memroot.adb, memroot.ads, memtrack.adb,
	misc.c, mkdir.c, mlib.adb, mlib.ads,
	mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads,
	mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads,
	namet.adb, namet.ads, namet.h, nlists.ads,
	nlists.h, nmake.adt, opt.adb, opt.ads,
	osint.adb, osint.ads, osint-b.adb, osint-c.adb,
	par.adb, par-ch10.adb, par-ch11.adb, par-ch2.adb,
	par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
	par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb,
	par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb,
	prj.adb, prj.ads, prj-attr.adb, prj-attr.ads,
	prj-com.adb, prj-com.ads, prj-dect.adb, prj-dect.ads,
	prj-env.adb, prj-env.ads, prj-ext.adb, prj-ext.ads,
	prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads,
	prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads,
	prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads,
	prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads,
	prj-util.adb, prj-util.ads, raise.c, raise.h,
	repinfo.adb, repinfo.h, restrict.adb, restrict.ads,
	rident.ads, rtsfind.adb, rtsfind.ads, s-addima.ads,
	s-arit64.adb, s-assert.adb, s-assert.ads, s-atacco.adb,
	s-atacco.ads, s-auxdec.adb, s-auxdec.ads, s-bitops.adb,
	scans.ads, scn.adb, scn.ads, s-crc32.adb,
	s-crc32.ads, s-direio.adb, sem.adb, sem.ads,
	sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
	sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb,
	sem_ch11.adb, sem_ch12.adb, sem_ch12.ads, sem_ch13.adb,
	sem_ch13.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.adb,
	sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
	sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
	sem_ch9.adb, sem_disp.adb, sem_disp.ads, sem_dist.adb,
	sem_elab.adb, sem_eval.adb, sem_eval.ads, sem_intr.adb,
	sem_maps.adb, sem_mech.adb, sem_prag.adb, sem_prag.ads,
	sem_res.adb, sem_res.ads, sem_type.adb, sem_type.ads,
	sem_util.adb, sem_util.ads, sem_warn.adb, s-errrep.adb,
	s-errrep.ads, s-exctab.adb, s-exctab.ads, s-exnint.ads,
	s-exnllf.ads, s-exnlli.ads, s-expint.ads, s-explli.ads,
	s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
	s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-fileio.adb,
	s-fileio.ads, s-finimp.adb, s-finimp.ads, s-finroo.adb,
	s-finroo.ads, sfn_scan.adb, s-gloloc.adb, s-gloloc.ads,
	s-imgdec.adb, s-imgenu.adb, s-imgrea.adb, s-imgwch.adb,
	sinfo.adb, sinfo.ads, s-inmaop.ads, sinput.adb,
	sinput.ads, sinput-d.adb, sinput-l.adb, sinput-l.ads,
	sinput-p.adb, sinput-p.ads, s-interr.adb, s-interr.ads,
	s-intman.ads, s-maccod.ads, s-mastop.adb, s-mastop.ads,
	s-memory.adb, s-memory.ads, snames.adb, snames.ads,
	snames.h, s-osprim.ads, s-parame.ads, s-parint.ads,
	s-pooloc.adb, s-pooloc.ads, s-poosiz.adb, sprint.adb,
	s-proinf.ads, s-scaval.ads, s-secsta.adb, s-secsta.ads,
	s-sequio.adb, s-shasto.adb, s-shasto.ads, s-soflin.ads,
	s-stache.adb, s-stache.ads, s-stalib.adb, s-stalib.ads,
	s-stoele.ads, s-stopoo.ads, s-stratt.adb, s-stratt.ads,
	s-strops.adb, s-strops.ads, s-taasde.adb, s-taasde.ads,
	s-tadeca.adb, s-tadeca.ads, s-tadert.adb, s-tadert.ads,
	s-taenca.adb, s-taenca.ads, s-taprob.adb, s-taprob.ads,
	s-taprop.ads, s-tarest.adb, s-tarest.ads, s-tasdeb.adb,
	s-tasdeb.ads, s-tasinf.adb, s-tasinf.ads, s-tasini.adb,
	s-tasini.ads, s-taskin.adb, s-taskin.ads, s-tasque.adb,
	s-tasque.ads, s-tasren.adb, s-tasren.ads, s-tasres.ads,
	s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.ads,
	s-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
	s-tpoben.adb, s-tpoben.ads, s-tpobop.adb, s-tpobop.ads,
	s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
	stringt.adb, stringt.ads, stringt.h, style.ads,
	stylesw.adb, stylesw.ads, s-unstyp.ads, s-vaflop.ads,
	s-valrea.adb, s-valuti.adb, s-vercon.adb, s-vmexta.adb,
	s-wchcnv.ads, s-wchcon.ads, s-widcha.adb, switch.adb,
	switch.ads, switch-b.adb, switch-c.adb, switch-m.adb,
	s-wwdcha.adb, s-wwdwch.adb, sysdep.c, system.ads,
	table.adb, table.ads, targparm.adb, targparm.ads,
	targtyps.c, tbuild.adb, tbuild.ads, tracebak.c,
	trans.c, tree_io.adb, treepr.adb, treeprs.adt,
	ttypes.ads, types.ads, types.h, uintp.adb,
	uintp.ads, uintp.h, uname.adb, urealp.adb,
	urealp.ads, urealp.h, usage.adb, utils2.c,
	utils.c, validsw.adb, validsw.ads, widechar.adb,
	xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads,
	xr_tabls.adb, xr_tabls.ads, xtreeprs.adb, xsnames.adb,
	einfo.h, sinfo.h, treeprs.ads, nmake.ads, nmake.adb,
	gnatvsn.ads: Merge with ACT tree.

	* gnatvsn.adb: Rewritten in a simpler and more efficient way.

From-SVN: r72751
2003-10-21 15:42:24 +02:00
Geert Bosch
bcea76b65d 1aexcept.adb, [...]: Merge header, formatting and other trivial changes from ACT.
* 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
	1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
	3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3ssoccon.ads,
	3ssoliop.ads, 3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads,
	3wsoliop.ads, 41intnam.ads, 42intnam.ads, 4aintnam.ads,
	4cintnam.ads, 4dintnam.ads, 4gintnam.ads, 4hexcpol.adb,
	4hintnam.ads, 4lintnam.ads, 4mintnam.ads, 4nintnam.ads,
	4ointnam.ads, 4onumaux.ads, 4pintnam.ads, 4rintnam.ads,
	4sintnam.ads, 4uintnam.ads, 4vcaldel.adb, 4vcalend.adb,
	4vcalend.ads, 4vintnam.ads, 4wcalend.adb, 4wexcpol.adb,
	4wintnam.ads, 4zintnam.ads, 4znumaux.ads, 4zsytaco.adb,
	4zsytaco.ads, 51osinte.adb, 51osinte.ads, 52osinte.adb,
	52osinte.ads, 52system.ads, 53osinte.ads, 54osinte.ads,
	5amastop.adb, 5aosinte.adb, 5aosinte.ads, 5asystem.ads,
	5ataprop.adb, 5atasinf.ads, 5ataspri.ads, 5atpopsp.adb,
	5avxwork.ads, 5bosinte.adb, 5bosinte.ads, 5bsystem.ads,
	5cosinte.ads, 5dosinte.ads, 5esystem.ads, 5etpopse.adb,
	5fintman.adb, 5fosinte.ads, 5fsystem.ads, 5ftaprop.adb,
	5ftasinf.ads, 5ginterr.adb, 5gintman.adb, 5gmastop.adb,
	5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
	5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
	5hosinte.adb, 5hosinte.ads, 5hparame.ads, 5hsystem.ads,
	5htaprop.adb, 5htaspri.ads, 5htraceb.adb, 5iosinte.adb,
	5iosinte.ads, 5itaprop.adb, 5itaspri.ads, 5ksystem.ads,
	5kvxwork.ads, 5lintman.adb, 5lml-tgt.adb, 5losinte.ads,
	5lsystem.ads, 5mosinte.ads, 5mvxwork.ads, 5ninmaop.adb,
	5nintman.adb, 5nosinte.ads, 5ntaprop.adb, 5ntaspri.ads,
	5ointerr.adb, 5omastop.adb, 5oosinte.adb, 5oosinte.ads,
	5oosprim.adb, 5oparame.adb, 5osystem.ads, 5otaprop.adb,
	5otaspri.ads, 5posinte.ads, 5posprim.adb, 5pvxwork.ads,
	5qosinte.adb, 5qosinte.ads, 5qstache.adb, 5qtaprop.adb,
	5qtaspri.ads, 5rosinte.adb, 5rosinte.ads, 5rparame.adb,
	5sintman.adb, 5sosinte.adb, 5sosinte.ads, 5sparame.adb,
	5ssystem.ads, 5staprop.adb, 5stasinf.adb, 5stasinf.ads,
	5staspri.ads, 5stpopse.adb, 5svxwork.ads, 5tosinte.ads,
	5uintman.adb, 5uosinte.ads, 5vasthan.adb, 5vinmaop.adb,
	5vinterr.adb, 5vintman.adb, 5vintman.ads, 5vmastop.adb,
	5vosinte.adb, 5vosinte.ads, 5vosprim.adb, 5vosprim.ads,
	5vparame.ads, 5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads,
	5vtpopde.adb, 5vtpopde.ads, 5vvaflop.adb, 5wgloloc.adb,
	5wintman.adb, 5wmemory.adb, 5wosinte.ads, 5wosprim.adb,
	5wsystem.ads, 5wtaprop.adb, 5wtaspri.ads, 5ysystem.ads,
	5zinterr.adb, 5zintman.adb, 5zosinte.adb, 5zosinte.ads,
	5zosprim.adb, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb,
	6vcstrea.adb, 6vinterf.ads, 7sinmaop.adb, 7sintman.adb,
	7sosinte.adb, 7sosprim.adb, 7staprop.adb, 7staspri.ads,
	7stpopsp.adb, 7straceb.adb, 86numaux.adb, 86numaux.ads,
	9drpc.adb, a-astaco.adb, a-astaco.ads, a-caldel.adb,
	a-caldel.ads, a-calend.adb, a-calend.ads, a-chahan.adb,
	a-chahan.ads, a-charac.ads, a-chlat1.ads, a-chlat9.ads,
	a-colien.adb, a-colien.ads, a-colire.adb, a-colire.ads,
	a-comlin.adb, a-comlin.ads, a-cwila1.ads, a-cwila9.ads,
	a-decima.adb, a-decima.ads, a-diocst.adb, a-diocst.ads,
	a-direio.adb, a-direio.ads, a-dynpri.adb, a-dynpri.ads,
	a-einuoc.adb, a-einuoc.ads, a-except.adb, a-except.ads,
	a-excpol.adb, a-exctra.adb, a-exctra.ads, a-filico.adb,
	a-filico.ads, a-finali.adb, a-finali.ads, a-flteio.ads,
	a-fwteio.ads, a-inteio.ads, a-interr.adb, a-interr.ads,
	a-intnam.ads, a-intsig.adb, a-intsig.ads, a-ioexce.ads,
	a-iwteio.ads, a-lfteio.ads, a-lfwtio.ads, a-liteio.ads,
	a-liwtio.ads, a-llftio.ads, a-llfwti.ads, a-llitio.ads,
	a-lliwti.ads, a-ncelfu.ads, a-ngcefu.adb, a-ngcefu.ads,
	a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.adb, a-ngelfu.ads,
	a-nlcefu.ads, a-nlcoty.ads, a-nlelfu.ads, a-nllcef.ads,
	a-nllcty.ads, a-nllefu.ads, a-nscefu.ads, a-nscoty.ads,
	a-nselfu.ads, a-nucoty.ads, a-nudira.adb, a-nudira.ads,
	a-nuelfu.ads, a-nuflra.adb, a-nuflra.ads, a-numaux.ads,
	a-numeri.ads, a-reatim.adb, a-reatim.ads, a-retide.adb,
	a-retide.ads, a-sequio.adb, a-sequio.ads, a-sfteio.ads,
	a-sfwtio.ads, a-siocst.adb, a-siocst.ads, a-siteio.ads,
	a-siwtio.ads, a-ssicst.adb, a-ssicst.ads, a-ssitio.ads,
	a-ssiwti.ads, a-stmaco.ads, a-storio.adb, a-storio.ads,
	a-strbou.adb, a-strbou.ads, a-stream.ads, a-strfix.adb,
	a-strfix.ads, a-string.ads, a-strmap.adb, a-strmap.ads,
	a-strsea.adb, a-strsea.ads, a-strunb.adb, a-strunb.ads,
	a-ststio.adb, a-ststio.ads, a-stunau.adb, a-stunau.ads,
	a-stwibo.adb, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads,
	a-stwima.adb, a-stwima.ads, a-stwise.adb, a-stwise.ads,
	a-stwiun.adb, a-stwiun.ads, a-suteio.adb, a-suteio.ads,
	a-swmwco.ads, a-swuwti.adb, a-swuwti.ads, a-sytaco.adb,
	a-sytaco.ads, a-tags.adb, a-tags.ads, a-tasatt.adb,
	a-tasatt.ads, a-taside.adb, a-taside.ads, a-teioed.adb,
	a-teioed.ads, a-textio.adb, a-textio.ads, a-ticoau.adb,
	a-ticoau.ads, a-ticoio.adb, a-ticoio.ads, a-tideau.adb,
	a-tideau.ads, a-tideio.adb, a-tideio.ads, a-tienau.adb,
	a-tienau.ads, a-tienio.adb, a-tienio.ads, a-tifiio.adb,
	a-tifiio.ads, a-tiflau.adb, a-tiflau.ads, a-tiflio.adb,
	a-tiflio.ads, a-tigeau.adb, a-tigeau.ads, a-tiinau.adb,
	a-tiinau.ads, a-tiinio.adb, a-tiinio.ads, a-timoau.adb,
	a-timoau.ads, a-timoio.adb, a-timoio.ads, a-tiocst.adb,
	a-tiocst.ads, a-titest.adb, a-titest.ads, a-unccon.ads,
	a-uncdea.ads, a-witeio.adb, a-witeio.ads, a-wtcoau.adb,
	a-wtcoau.ads, a-wtcoio.adb, a-wtcoio.ads, a-wtcstr.adb,
	a-wtcstr.ads, a-wtdeau.adb, a-wtdeau.ads, a-wtdeio.adb,
	a-wtdeio.ads, a-wtedit.adb, a-wtedit.ads, a-wtenau.adb,
	a-wtenau.ads, a-wtenio.adb, a-wtenio.ads, a-wtfiio.adb,
	a-wtfiio.ads, a-wtflau.adb, a-wtflau.ads, a-wtflio.adb,
	a-wtflio.ads, a-wtgeau.adb, a-wtgeau.ads, a-wtinau.adb,
	a-wtinau.ads, a-wtinio.adb, a-wtinio.ads, a-wtmoau.adb,
	a-wtmoau.ads, a-wtmoio.adb, a-wtmoio.ads, a-wttest.adb,
	a-wttest.ads, ada-tree.h, ada.ads, ada.h,
	adadecode.c, adadecode.h, ali-util.adb, ali-util.ads,
	ali.adb, ali.ads, alloc.ads, argv.c,
	atree.adb, atree.ads, atree.h, aux-io.c,
	back_end.adb, back_end.ads, bcheck.adb, bcheck.ads,
	binde.adb, binde.ads, binderr.adb, binderr.ads,
	bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads,
	butil.adb, butil.ads, cal.c, calendar.ads,
	casing.adb, casing.ads, ceinfo.adb, checks.adb,
	checks.ads, cio.c, comperr.adb, comperr.ads,
	config-lang.in, csets.adb, csets.ads, csinfo.adb,
	cstand.adb, cstand.ads, cuintp.c, debug.adb,
	debug.ads, debug_a.adb, debug_a.ads, dec-io.adb,
	dec-io.ads, dec.ads, deftarg.c, directio.ads,
	einfo.adb, einfo.ads, elists.adb, elists.ads,
	elists.h, errno.c, errout.adb, errout.ads,
	eval_fat.adb, eval_fat.ads, exit.c, exp_aggr.adb,
	exp_aggr.ads, exp_attr.adb, exp_attr.ads, exp_ch10.ads,
	exp_ch11.adb, exp_ch11.ads, exp_ch12.adb, exp_ch12.ads,
	exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads,
	exp_ch3.adb, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads,
	exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads,
	exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads,
	exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads,
	exp_dbug.adb, exp_dbug.ads, exp_disp.adb, exp_disp.ads,
	exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads,
	exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads,
	exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads,
	exp_smem.adb, exp_smem.ads, exp_strm.adb, exp_strm.ads,
	exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads,
	exp_vfpt.adb, exp_vfpt.ads, expander.adb, expander.ads,
	fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads,
	fname-uf.adb, fname-uf.ads, fname.adb, fname.ads,
	freeze.adb, freeze.ads, frontend.adb, frontend.ads,
	g-awk.adb, g-awk.ads, g-busora.adb, g-busora.ads,
	g-busorg.adb, g-busorg.ads, g-calend.adb, g-calend.ads,
	g-casuti.adb, g-casuti.ads, g-catiio.adb, g-catiio.ads,
	g-cgi.adb, g-cgi.ads, g-cgicoo.adb, g-cgicoo.ads,
	g-cgideb.adb, g-cgideb.ads, g-comlin.adb, g-comlin.ads,
	g-crc32.adb, g-crc32.ads, g-curexc.ads, g-debpoo.adb,
	g-debpoo.ads, g-debuti.adb, g-debuti.ads, g-diopit.adb,
	g-diopit.ads, g-dirope.adb, g-dirope.ads, g-dyntab.adb,
	g-dyntab.ads, g-enblsp.adb, g-except.ads, g-exctra.adb,
	g-exctra.ads, g-expect.adb, g-expect.ads, g-flocon.ads,
	g-hesora.adb, g-hesora.ads, g-hesorg.adb, g-hesorg.ads,
	g-htable.adb, g-htable.ads, g-io.adb, g-io.ads,
	g-io_aux.adb, g-io_aux.ads, g-locfil.ads, g-md5.adb,
	g-md5.ads, g-moreex.adb, g-moreex.ads, g-os_lib.adb,
	g-os_lib.ads, g-regexp.adb, g-regexp.ads, g-regist.ads,
	g-regpat.adb, g-regpat.ads, g-soccon.ads, g-socket.adb,
	g-socket.ads, g-socthi.adb, g-socthi.ads, g-soliop.ads,
	g-souinf.ads, g-speche.adb, g-speche.ads, g-spipat.adb,
	g-spipat.ads, g-spitbo.adb, g-spitbo.ads, g-sptabo.ads,
	g-sptain.ads, g-sptavs.ads, g-table.adb, g-table.ads,
	g-tasloc.adb, g-tasloc.ads, g-thread.adb, g-thread.ads,
	g-traceb.adb, g-traceb.ads, g-trasym.adb, g-trasym.ads,
	get_targ.adb, get_targ.ads, gnat-style.texi, gnat.ads,
	gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads,
	gnatbl.c, gnatchop.adb, gnatcmd.adb, gnatcmd.ads,
	gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads,
	gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb,
	gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb,
	gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads,
	gnatpsta.adb, gnatvsn.adb, gnatvsn.ads, gnatxref.adb,
	hlo.adb, hlo.ads, hostparm.ads, i-c.adb,
	i-c.ads, i-cexten.ads, i-cobol.adb, i-cobol.ads,
	i-cpoint.adb, i-cpoint.ads, i-cpp.adb, i-cpp.ads,
	i-cstrea.adb, i-cstrea.ads, i-cstrin.adb, i-cstrin.ads,
	i-fortra.adb, i-fortra.ads, i-os2err.ads, i-os2lib.adb,
	i-os2lib.ads, i-os2syn.ads, i-os2thr.ads, i-pacdec.adb,
	i-pacdec.ads, i-vxwork.ads, impunit.adb, impunit.ads,
	inline.adb, inline.ads, interfac.ads, ioexcept.ads,
	itypes.adb, itypes.ads, krunch.adb, krunch.ads,
	layout.adb, layout.ads, lib-list.adb, lib-load.adb,
	lib-load.ads, lib-sort.adb, lib-util.adb, lib-util.ads,
	lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads,
	lib.adb, lib.ads, live.adb, live.ads,
	machcode.ads, make.adb, make.ads, makeusg.adb,
	makeusg.ads, math_lib.adb, mdll-fil.adb, mdll-fil.ads,
	mdll-utl.adb, mdll-utl.ads, mdll.adb, mdll.ads,
	memroot.adb, memroot.ads, memtrack.adb, mlib-fil.adb,
	mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb,
	mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, mlib.adb,
	mlib.ads, namet.adb, namet.ads, nlists.adb,
	nlists.ads, opt.adb, opt.ads, osint-b.adb,
	osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb,
	osint-l.ads, osint-m.adb, osint-m.ads, osint.adb,
	osint.ads, output.adb, output.ads, par-ch10.adb,
	par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb,
	par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb,
	par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb,
	par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb,
	par-tchk.adb, par-util.adb, par.adb, par.ads,
	prj-attr.adb, prj-attr.ads, prj-com.adb, prj-com.ads,
	prj-dect.adb, prj-dect.ads, prj-env.adb, prj-env.ads,
	prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads,
	prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads,
	prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads,
	prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads,
	prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads,
	prj.adb, prj.ads, repinfo.adb, repinfo.ads,
	restrict.adb, restrict.ads, rident.ads, rtsfind.adb,
	rtsfind.ads, s-addima.adb, s-addima.ads, s-arit64.adb,
	s-arit64.ads, s-assert.adb, s-assert.ads, s-asthan.adb,
	s-asthan.ads, s-atacco.adb, s-atacco.ads, s-auxdec.adb,
	s-auxdec.ads, s-bitops.adb, s-bitops.ads, s-chepoo.ads,
	s-crc32.adb, s-crc32.ads, s-direio.adb, s-direio.ads,
	s-errrep.adb, s-errrep.ads, s-except.ads, s-exctab.adb,
	s-exctab.ads, s-exnflt.ads, s-exngen.adb, s-exngen.ads,
	s-exnint.ads, s-exnlfl.ads, s-exnlin.ads, s-exnllf.ads,
	s-exnlli.ads, s-exnsfl.ads, s-exnsin.ads, s-exnssi.ads,
	s-expflt.ads, s-expgen.adb, s-expgen.ads, s-expint.ads,
	s-explfl.ads, s-explin.ads, s-expllf.ads, s-explli.ads,
	s-expllu.adb, s-expllu.ads, s-expmod.adb, s-expmod.ads,
	s-expsfl.ads, s-expsin.ads, s-expssi.ads, s-expuns.adb,
	s-expuns.ads, s-fatflt.ads, s-fatgen.adb, s-fatgen.ads,
	s-fatlfl.ads, s-fatllf.ads, s-fatsfl.ads, s-ficobl.ads,
	s-fileio.adb, s-fileio.ads, s-finimp.adb, s-finimp.ads,
	s-finroo.adb, s-finroo.ads, s-fore.adb, s-fore.ads,
	s-gloloc.adb, s-gloloc.ads, s-imgbiu.adb, s-imgbiu.ads,
	s-imgboo.adb, s-imgboo.ads, s-imgcha.adb, s-imgcha.ads,
	s-imgdec.adb, s-imgdec.ads, s-imgenu.adb, s-imgenu.ads,
	s-imgint.adb, s-imgint.ads, s-imgllb.adb, s-imgllb.ads,
	s-imglld.adb, s-imglld.ads, s-imglli.adb, s-imglli.ads,
	s-imgllu.adb, s-imgllu.ads, s-imgllw.adb, s-imgllw.ads,
	s-imgrea.adb, s-imgrea.ads, s-imguns.adb, s-imguns.ads,
	s-imgwch.adb, s-imgwch.ads, s-imgwiu.adb, s-imgwiu.ads,
	s-inmaop.ads, s-interr.adb, s-interr.ads, s-intman.ads,
	s-io.adb, s-io.ads, s-maccod.ads, s-mantis.adb,
	s-mantis.ads, s-mastop.adb, s-mastop.ads, s-memory.adb,
	s-memory.ads, s-osprim.ads, s-pack03.adb, s-pack03.ads,
	s-pack05.adb, s-pack05.ads, s-pack06.adb, s-pack06.ads,
	s-pack07.adb, s-pack07.ads, s-pack09.adb, s-pack09.ads,
	s-pack10.adb, s-pack10.ads, s-pack11.adb, s-pack11.ads,
	s-pack12.adb, s-pack12.ads, s-pack13.adb, s-pack13.ads,
	s-pack14.adb, s-pack14.ads, s-pack15.adb, s-pack15.ads,
	s-pack17.adb, s-pack17.ads, s-pack18.adb, s-pack18.ads,
	s-pack19.adb, s-pack19.ads, s-pack20.adb, s-pack20.ads,
	s-pack21.adb, s-pack21.ads, s-pack22.adb, s-pack22.ads,
	s-pack23.adb, s-pack23.ads, s-pack24.adb, s-pack24.ads,
	s-pack25.adb, s-pack25.ads, s-pack26.adb, s-pack26.ads,
	s-pack27.adb, s-pack27.ads, s-pack28.adb, s-pack28.ads,
	s-pack29.adb, s-pack29.ads, s-pack30.adb, s-pack30.ads,
	s-pack31.adb, s-pack31.ads, s-pack33.adb, s-pack33.ads,
	s-pack34.adb, s-pack34.ads, s-pack35.adb, s-pack35.ads,
	s-pack36.adb, s-pack36.ads, s-pack37.adb, s-pack37.ads,
	s-pack38.adb, s-pack38.ads, s-pack39.adb, s-pack39.ads,
	s-pack40.adb, s-pack40.ads, s-pack41.adb, s-pack41.ads,
	s-pack42.adb, s-pack42.ads, s-pack43.adb, s-pack43.ads,
	s-pack44.adb, s-pack44.ads, s-pack45.adb, s-pack45.ads,
	s-pack46.adb, s-pack46.ads, s-pack47.adb, s-pack47.ads,
	s-pack48.adb, s-pack48.ads, s-pack49.adb, s-pack49.ads,
	s-pack50.adb, s-pack50.ads, s-pack51.adb, s-pack51.ads,
	s-pack52.adb, s-pack52.ads, s-pack53.adb, s-pack53.ads,
	s-pack54.adb, s-pack54.ads, s-pack55.adb, s-pack55.ads,
	s-pack56.adb, s-pack56.ads, s-pack57.adb, s-pack57.ads,
	s-pack58.adb, s-pack58.ads, s-pack59.adb, s-pack59.ads,
	s-pack60.adb, s-pack60.ads, s-pack61.adb, s-pack61.ads,
	s-pack62.adb, s-pack62.ads, s-pack63.adb, s-pack63.ads,
	s-parame.adb, s-parame.ads, s-parint.adb, s-parint.ads,
	s-pooglo.adb, s-pooglo.ads, s-pooloc.adb, s-pooloc.ads,
	s-poosiz.adb, s-poosiz.ads, s-powtab.ads, s-proinf.adb,
	s-proinf.ads, s-rpc.adb, s-rpc.ads, s-scaval.ads,
	s-secsta.adb, s-secsta.ads, s-sequio.adb, s-sequio.ads,
	s-shasto.adb, s-shasto.ads, s-soflin.adb, s-soflin.ads,
	s-sopco3.adb, s-sopco3.ads, s-sopco4.adb, s-sopco4.ads,
	s-sopco5.adb, s-sopco5.ads, s-stache.adb, s-stache.ads,
	s-stalib.adb, s-stalib.ads, s-stoele.adb, s-stoele.ads,
	s-stopoo.ads, s-stratt.adb, s-stratt.ads, s-strops.adb,
	s-strops.ads, s-taasde.adb, s-taasde.ads, s-tadeca.adb,
	s-tadeca.ads, s-tadert.adb, s-tadert.ads, s-taenca.adb,
	s-taenca.ads, s-taprob.adb, s-taprob.ads, s-taprop.ads,
	s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
	s-tasinf.adb, s-tasinf.ads, s-tasini.adb, s-tasini.ads,
	s-taskin.adb, s-taskin.ads, s-tasque.adb, s-tasque.ads,
	s-tasren.adb, s-tasren.ads, s-tasres.ads, s-tassta.adb,
	s-tassta.ads, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
	s-tataat.ads, s-tpinop.adb, s-tpinop.ads, s-tpoben.adb,
	s-tpoben.ads, s-tpobop.adb, s-tpobop.ads, s-tposen.adb,
	s-tposen.ads, s-traceb.adb, s-traceb.ads, s-traces.adb,
	s-traces.ads, s-tratas.adb, s-tratas.ads, s-unstyp.ads,
	s-vaflop.adb, s-vaflop.ads, s-valboo.adb, s-valboo.ads,
	s-valcha.adb, s-valcha.ads, s-valdec.adb, s-valdec.ads,
	s-valenu.adb, s-valenu.ads, s-valint.adb, s-valint.ads,
	s-vallld.adb, s-vallld.ads, s-vallli.adb, s-vallli.ads,
	s-valllu.adb, s-valllu.ads, s-valrea.adb, s-valrea.ads,
	s-valuns.adb, s-valuns.ads, s-valuti.adb, s-valuti.ads,
	s-valwch.adb, s-valwch.ads, s-vercon.adb, s-vercon.ads,
	s-vmexta.adb, s-vmexta.ads, s-wchcnv.adb, s-wchcnv.ads,
	s-wchcon.ads, s-wchjis.adb, s-wchjis.ads, s-wchstw.adb,
	s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, s-widboo.adb,
	s-widboo.ads, s-widcha.adb, s-widcha.ads, s-widenu.adb,
	s-widenu.ads, s-widlli.adb, s-widlli.ads, s-widllu.adb,
	s-widllu.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb,
	s-wwdcha.ads, s-wwdenu.adb, s-wwdenu.ads, s-wwdwch.adb,
	s-wwdwch.ads, scans.adb, scans.ads, scn-nlit.adb,
	scn-slit.adb, scn.adb, scn.ads, sdefault.ads,
	sem.adb, sem.ads, sem_aggr.adb, sem_aggr.ads,
	sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
	sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads,
	sem_ch11.adb, sem_ch11.ads, sem_ch12.adb, sem_ch12.ads,
	sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads,
	sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch4.ads,
	sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads,
	sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads,
	sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads,
	sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads,
	sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads,
	sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads,
	sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads,
	sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads,
	sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads,
	sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads,
	sequenio.ads, sfn_scan.adb, sfn_scan.ads, sinfo-cn.adb,
	sinfo-cn.ads, sinfo.adb, sinfo.ads, sinput-d.adb,
	sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb,
	sinput-p.ads, sinput.adb, sinput.ads, snames.adb,
	snames.ads, sprint.adb, sprint.ads, stand.adb,
	stand.ads, stringt.adb, stringt.ads, style.adb,
	style.ads, stylesw.adb, stylesw.ads, switch-b.adb,
	switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb,
	switch-m.ads, switch.adb, switch.ads, system.ads,
	table.adb, table.ads, targparm.adb, targparm.ads,
	tbuild.adb, tbuild.ads, text_io.ads, trans.c,
	tree_gen.adb, tree_gen.ads, tree_in.adb, tree_in.ads,
	tree_io.adb, tree_io.ads, treepr.adb, treepr.ads,
	ttypef.ads, ttypes.ads, types.adb, types.ads,
	uintp.adb, uintp.ads, uname.adb, uname.ads,
	unchconv.ads, unchdeal.ads, urealp.adb, urealp.ads,
	usage.adb, usage.ads, validsw.adb, validsw.ads,
	widechar.adb, widechar.ads, xeinfo.adb, xnmake.adb,
	xr_tabls.adb, xr_tabls.ads, xref_lib.adb, xref_lib.ads,
	xsinfo.adb, xsnames.adb, xtreeprs.adb : Merge header,
	formatting and other trivial changes from ACT.

From-SVN: r66044
2003-04-24 19:54:20 +02:00
Nathanael Nerode
71ff80dc28 Nathanael Nerode <neroden@gcc.gnu.org> PR ada/6919 (forward port of patch for PR ada/5904)
Nathanael Nerode  <neroden@gcc.gnu.org>
	PR ada/6919 (forward port of patch for PR ada/5904)
	* 1aexcept.adb 1aexcept.ads 41intnam.ads 42intnam.ads
	4aintnam.ads 4cintnam.ads 4dintnam.ads 4hexcpol.adb
	4lintnam.ads 4mintnam.ads 4nintnam.ads 4onumaux.ads
	4pintnam.ads 4rintnam.ads 4sintnam.ads 4uintnam.ads
	4vcalend.adb 4vintnam.ads 4wcalend.adb 4wexcpol.adb
	4wintnam.ads 4zintnam.ads 4znumaux.ads 4zsytaco.adb
	4zsytaco.ads 51osinte.adb 51osinte.ads 52osinte.adb
	52osinte.ads 52system.ads 53osinte.ads 5aosinte.ads
	5asystem.ads 5atasinf.ads 5ataspri.ads 5avxwork.ads
	5bosinte.ads 5bsystem.ads 5cosinte.ads 5dosinte.ads
	5esystem.ads 5fosinte.ads 5fsystem.ads 5ftasinf.ads
	5ginterr.adb 5gmastop.adb 5gosinte.ads 5gproinf.adb
	5gproinf.ads 5gsystem.ads 5gtasinf.adb 5gtasinf.ads
	5gtpgetc.adb 5hparame.ads 5hsystem.ads 5htaspri.ads
	5iosinte.ads 5itaspri.ads 5ksystem.ads 5kvxwork.ads
	5losinte.ads 5lsystem.ads 5mosinte.ads 5mvxwork.ads
	5ninmaop.adb 5nintman.adb 5nosinte.ads 5ntaspri.ads
	5oosprim.adb 5oparame.adb 5osystem.ads 5posinte.ads
	5posprim.adb 5pvxwork.ads 5rosinte.ads 5rparame.adb
	5sintman.adb 5sosinte.ads 5sparame.adb 5ssystem.ads
	5stasinf.adb 5stasinf.ads 5staspri.ads 5svxwork.ads
	5tosinte.ads 5uosinte.ads 5vasthan.adb 5vinterr.adb
	5vintman.ads 5vosinte.ads 5vosprim.adb 5vosprim.ads
	5vparame.ads 5vsystem.ads 5vtaspri.ads 5vtpopde.adb
	5vtpopde.ads 5vvaflop.adb 5wintman.adb 5wmemory.adb
	5wosinte.ads 5wosprim.adb 5wsystem.ads 5wtaprop.adb
	5wtaspri.ads 5ysystem.ads 5zinterr.adb 5zosinte.adb
	5zosinte.ads 5zosprim.adb 5zsystem.ads 6vcpp.adb 6vcstrea.adb
	7sosprim.adb 86numaux.adb 86numaux.ads 9drpc.adb a-astaco.adb
	a-caldel.ads a-calend.adb a-calend.ads a-chahan.adb
	a-chahan.ads a-colien.adb a-colien.ads a-colire.adb
	a-colire.ads a-comlin.adb a-comlin.ads a-cwila1.ads
	a-decima.adb a-decima.ads a-diocst.adb a-diocst.ads
	a-direio.adb a-direio.ads a-einuoc.adb a-einuoc.ads
	a-except.adb a-except.ads a-excpol.adb a-exctra.adb
	a-exctra.ads a-filico.adb a-filico.ads a-finali.adb
	a-finali.ads a-interr.ads a-intsig.adb a-intsig.ads
	a-ngcefu.adb a-ngcoty.adb a-ngcoty.ads a-ngelfu.adb
	a-nudira.adb a-nudira.ads a-nuflra.adb a-nuflra.ads
	a-numaux.ads a-reatim.ads a-retide.ads a-sequio.adb
	a-sequio.ads a-siocst.adb a-siocst.ads a-ssicst.adb
	a-ssicst.ads a-stmaco.ads a-storio.adb a-strbou.adb
	a-strbou.ads a-stream.ads a-strfix.adb a-strfix.ads
	a-strmap.adb a-strmap.ads a-strsea.adb a-strsea.ads
	a-strunb.adb a-strunb.ads a-ststio.adb a-ststio.ads
	a-stunau.adb a-stunau.ads a-stwibo.adb a-stwibo.ads
	a-stwifi.adb a-stwima.adb a-stwima.ads a-stwise.adb
	a-stwise.ads a-stwiun.adb a-stwiun.ads a-suteio.adb
	a-suteio.ads a-swmwco.ads a-swuwti.adb a-swuwti.ads
	a-sytaco.adb a-sytaco.ads a-tags.adb a-tags.ads a-tasatt.ads
	a-taside.adb a-taside.ads a-teioed.adb a-teioed.ads
	a-textio.adb a-textio.ads a-ticoau.adb a-ticoau.ads
	a-ticoio.adb a-ticoio.ads a-tideau.adb a-tideau.ads
	a-tideio.adb a-tideio.ads a-tienau.adb a-tienau.ads
	a-tienio.adb a-tienio.ads a-tifiio.adb a-tifiio.ads
	a-tiflau.adb a-tiflau.ads a-tiflio.adb a-tiflio.ads
	a-tigeau.adb a-tigeau.ads a-tiinau.adb a-tiinau.ads
	a-tiinio.adb a-tiinio.ads a-timoau.adb a-timoau.ads
	a-timoio.adb a-timoio.ads a-tiocst.adb a-tiocst.ads
	a-titest.adb a-witeio.adb a-witeio.ads a-wtcoau.adb
	a-wtcoau.ads a-wtcoio.adb a-wtcstr.adb a-wtcstr.ads
	a-wtdeau.adb a-wtdeau.ads a-wtdeio.adb a-wtdeio.ads
	a-wtedit.adb a-wtedit.ads a-wtenau.adb a-wtenau.ads
	a-wtenio.adb a-wtenio.ads a-wtfiio.adb a-wtfiio.ads
	a-wtflau.adb a-wtflau.ads a-wtflio.adb a-wtflio.ads
	a-wtgeau.adb a-wtgeau.ads a-wtinau.adb a-wtinau.ads
	a-wtinio.adb a-wtmoau.adb a-wtmoau.ads a-wtmoio.adb
	a-wtmoio.ads a-wttest.adb ada-tree.def ada-tree.h ada.h
	adaint.c adaint.h ali-util.adb ali-util.ads ali.adb ali.ads
	alloc.ads argv.c atree.adb atree.ads atree.h back_end.adb
	back_end.ads bcheck.adb bcheck.ads binde.adb binde.ads
	binderr.adb binderr.ads bindgen.adb bindgen.ads bindusg.adb
	bindusg.ads butil.adb butil.ads cal.c casing.adb casing.ads
	ceinfo.adb checks.adb checks.ads cio.c comperr.adb comperr.ads
	csets.adb csets.ads csinfo.adb cstand.adb cstand.ads
	cstreams.c cuintp.c debug.adb debug.ads debug_a.adb
	debug_a.ads dec-io.adb dec-io.ads dec.ads decl.c deftarg.c
	einfo.adb einfo.ads einfo.h elists.adb elists.ads elists.h
	errno.c errout.adb errout.ads eval_fat.adb eval_fat.ads exit.c
	exp_aggr.adb exp_aggr.ads exp_attr.adb exp_attr.ads
	exp_ch10.ads exp_ch11.adb exp_ch11.ads exp_ch12.adb
	exp_ch12.ads exp_ch13.adb exp_ch13.ads exp_ch2.adb exp_ch2.ads
	exp_ch3.adb exp_ch3.ads exp_ch4.adb exp_ch4.ads exp_ch5.adb
	exp_ch5.ads exp_ch6.adb exp_ch6.ads exp_ch7.adb exp_ch7.ads
	exp_ch8.adb exp_ch8.ads exp_ch9.adb exp_ch9.ads exp_code.adb
	exp_code.ads exp_dbug.adb exp_dbug.ads exp_disp.adb
	exp_disp.ads exp_dist.adb exp_dist.ads exp_fixd.adb
	exp_fixd.ads exp_imgv.adb exp_imgv.ads exp_intr.adb
	exp_intr.ads exp_pakd.adb exp_pakd.ads exp_prag.adb
	exp_prag.ads exp_smem.adb exp_smem.ads exp_strm.adb
	exp_strm.ads exp_tss.adb exp_tss.ads exp_util.adb exp_util.ads
	exp_vfpt.adb exp_vfpt.ads expander.adb expander.ads fe.h
	final.c fmap.adb fmap.ads fname-sf.adb fname-sf.ads
	fname-uf.adb fname-uf.ads fname.adb fname.ads freeze.adb
	freeze.ads frontend.adb frontend.ads g-calend.ads g-comlin.adb
	g-debpoo.adb g-debpoo.ads g-locfil.adb g-os_lib.ads
	g-regist.adb g-regist.ads get_targ.adb get_targ.ads gigi.h
	gmem.c gnat1drv.adb gnat1drv.ads gnat_ug.texi gnatbind.adb
	gnatbind.ads gnatbl.c gnatcmd.adb gnatcmd.ads gnatdll.adb
	gnatfind.adb gnatkr.adb gnatkr.ads gnatlbr.adb gnatlink.adb
	gnatlink.ads gnatls.adb gnatls.ads gnatmake.adb gnatmake.ads
	gnatmem.adb gnatprep.adb gnatprep.ads gnatpsta.adb gnatvsn.ads
	gnatxref.adb hlo.adb hlo.ads hostparm.ads i-c.adb i-cexten.ads
	i-cobol.adb i-cobol.ads i-cpoint.adb i-cpoint.ads i-cpp.adb
	i-cpp.ads i-cstrea.adb i-cstrea.ads i-cstrin.adb i-cstrin.ads
	i-fortra.adb i-os2err.ads i-os2lib.adb i-os2lib.ads
	i-os2syn.ads i-os2thr.ads i-pacdec.adb i-pacdec.ads
	impunit.adb impunit.ads init.c inline.adb inline.ads io-aux.c
	itypes.adb itypes.ads krunch.adb krunch.ads lang-options.h
	lang-specs.h layout.adb layout.ads lib-list.adb lib-load.adb
	lib-load.ads lib-sort.adb lib-util.adb lib-util.ads
	lib-writ.adb lib-writ.ads lib-xref.adb lib-xref.ads lib.adb
	lib.ads link.c live.adb live.ads make.adb make.ads makeusg.adb
	makeusg.ads math_lib.adb mdll.adb mdll.ads memtrack.adb misc.c
	namet.adb namet.ads namet.h nlists.adb nlists.ads nlists.h
	nmake.adb nmake.ads nmake.adt opt.adb opt.ads osint.adb
	osint.ads output.adb output.ads par-ch10.adb par-ch11.adb
	par-ch12.adb par-ch13.adb par-ch2.adb par-ch3.adb par-ch4.adb
	par-ch5.adb par-ch6.adb par-ch7.adb par-ch8.adb par-ch9.adb
	par-endh.adb par-labl.adb par-load.adb par-prag.adb
	par-sync.adb par-tchk.adb par-util.adb par.adb par.ads
	prj-attr.adb prj-attr.ads prj-com.adb prj-com.ads prj-dect.adb
	prj-dect.ads prj-env.adb prj-env.ads prj-ext.adb prj-ext.ads
	prj-nmsc.adb prj-nmsc.ads prj-pars.adb prj-pars.ads
	prj-part.adb prj-part.ads prj-proc.adb prj-proc.ads
	prj-strt.adb prj-strt.ads prj-tree.adb prj-tree.ads
	prj-util.adb prj-util.ads prj.adb prj.ads raise.c raise.h
	repinfo.adb repinfo.ads repinfo.h restrict.adb restrict.ads
	rident.ads rtsfind.adb rtsfind.ads s-addima.adb s-addima.ads
	s-arit64.adb s-arit64.ads s-assert.adb s-assert.ads
	s-asthan.adb s-asthan.ads s-atacco.adb s-auxdec.adb
	s-auxdec.ads s-bitops.adb s-bitops.ads s-chepoo.ads
	s-direio.adb s-direio.ads s-except.ads s-exctab.adb
	s-exctab.ads s-exnflt.ads s-exngen.adb s-exngen.ads
	s-exnint.ads s-exnlfl.ads s-exnlin.ads s-exnllf.ads
	s-exnlli.ads s-exnsfl.ads s-exnsin.ads s-exnssi.ads
	s-expflt.ads s-expgen.adb s-expgen.ads s-expint.ads
	s-explfl.ads s-explin.ads s-expllf.ads s-explli.ads
	s-expllu.adb s-expllu.ads s-expmod.adb s-expmod.ads
	s-expsfl.ads s-expsin.ads s-expssi.ads s-expuns.adb
	s-expuns.ads s-fatflt.ads s-fatgen.adb s-fatgen.ads
	s-fatlfl.ads s-fatllf.ads s-fatsfl.ads s-ficobl.ads
	s-fileio.adb s-fileio.ads s-finimp.adb s-finimp.ads
	s-finroo.adb s-finroo.ads s-fore.adb s-fore.ads s-imgbiu.adb
	s-imgbiu.ads s-imgboo.adb s-imgboo.ads s-imgcha.adb
	s-imgcha.ads s-imgdec.adb s-imgdec.ads s-imgenu.adb
	s-imgenu.ads s-imgint.adb s-imgint.ads s-imgllb.adb
	s-imgllb.ads s-imglld.adb s-imglld.ads s-imglli.adb
	s-imglli.ads s-imgllu.adb s-imgllu.ads s-imgllw.adb
	s-imgllw.ads s-imgrea.adb s-imgrea.ads s-imguns.adb
	s-imguns.ads s-imgwch.adb s-imgwch.ads s-imgwiu.adb
	s-imgwiu.ads s-inmaop.ads s-interr.adb s-interr.ads
	s-intman.ads s-io.adb s-io.ads s-maccod.ads s-mantis.adb
	s-mantis.ads s-memory.adb s-memory.ads s-osprim.ads
	s-pack03.adb s-pack03.ads s-pack05.adb s-pack05.ads
	s-pack06.adb s-pack06.ads s-pack07.adb s-pack07.ads
	s-pack09.adb s-pack09.ads s-pack10.adb s-pack10.ads
	s-pack11.adb s-pack11.ads s-pack12.adb s-pack12.ads
	s-pack13.adb s-pack13.ads s-pack14.adb s-pack14.ads
	s-pack15.adb s-pack15.ads s-pack17.adb s-pack17.ads
	s-pack18.adb s-pack18.ads s-pack19.adb s-pack19.ads
	s-pack20.adb s-pack20.ads s-pack21.adb s-pack21.ads
	s-pack22.adb s-pack22.ads s-pack23.adb s-pack23.ads
	s-pack24.adb s-pack24.ads s-pack25.adb s-pack25.ads
	s-pack26.adb s-pack26.ads s-pack27.adb s-pack27.ads
	s-pack28.adb s-pack28.ads s-pack29.adb s-pack29.ads
	s-pack30.adb s-pack30.ads s-pack31.adb s-pack31.ads
	s-pack33.adb s-pack33.ads s-pack34.adb s-pack34.ads
	s-pack35.adb s-pack35.ads s-pack36.adb s-pack36.ads
	s-pack37.adb s-pack37.ads s-pack38.adb s-pack38.ads
	s-pack39.adb s-pack39.ads s-pack40.adb s-pack40.ads
	s-pack41.adb s-pack41.ads s-pack42.adb s-pack42.ads
	s-pack43.adb s-pack43.ads s-pack44.adb s-pack44.ads
	s-pack45.adb s-pack45.ads s-pack46.adb s-pack46.ads
	s-pack47.adb s-pack47.ads s-pack48.adb s-pack48.ads
	s-pack49.adb s-pack49.ads s-pack50.adb s-pack50.ads
	s-pack51.adb s-pack51.ads s-pack52.adb s-pack52.ads
	s-pack53.adb s-pack53.ads s-pack54.adb s-pack54.ads
	s-pack55.adb s-pack55.ads s-pack56.adb s-pack56.ads
	s-pack57.adb s-pack57.ads s-pack58.adb s-pack58.ads
	s-pack59.adb s-pack59.ads s-pack60.adb s-pack60.ads
	s-pack61.adb s-pack61.ads s-pack62.adb s-pack62.ads
	s-pack63.adb s-pack63.ads s-parame.adb s-parame.ads
	s-parint.adb s-parint.ads s-pooglo.adb s-pooglo.ads
	s-pooloc.adb s-pooloc.ads s-poosiz.adb s-poosiz.ads
	s-powtab.ads s-proinf.adb s-proinf.ads s-rpc.adb s-rpc.ads
	s-scaval.ads s-secsta.adb s-secsta.ads s-sequio.adb
	s-sequio.ads s-shasto.adb s-shasto.ads s-soflin.adb
	s-soflin.ads s-sopco3.adb s-sopco3.ads s-sopco4.adb
	s-sopco4.ads s-sopco5.adb s-sopco5.ads s-stache.adb
	s-stache.ads s-stalib.adb s-stalib.ads s-stoele.adb
	s-stopoo.ads s-stratt.adb s-stratt.ads s-strops.adb
	s-strops.ads s-taprob.ads s-taprop.ads s-tarest.ads
	s-tasdeb.adb s-tasdeb.ads s-tasinf.adb s-tasinf.ads
	s-tasini.ads s-taskin.ads s-tasren.ads s-tasres.ads
	s-tassta.ads s-tpinop.adb s-tpinop.ads s-tpoben.ads
	s-tpobop.ads s-unstyp.ads s-vaflop.adb s-vaflop.ads
	s-valboo.adb s-valboo.ads s-valcha.adb s-valcha.ads
	s-valdec.adb s-valdec.ads s-valenu.adb s-valenu.ads
	s-valint.adb s-valint.ads s-vallld.adb s-vallld.ads
	s-vallli.adb s-vallli.ads s-valllu.adb s-valllu.ads
	s-valrea.adb s-valrea.ads s-valuns.adb s-valuns.ads
	s-valuti.adb s-valuti.ads s-valwch.adb s-valwch.ads
	s-vercon.adb s-vercon.ads s-vmexta.adb s-vmexta.ads
	s-wchcnv.adb s-wchcnv.ads s-wchcon.ads s-wchjis.adb
	s-wchjis.ads s-wchstw.adb s-wchstw.ads s-wchwts.adb
	s-wchwts.ads s-widboo.adb s-widboo.ads s-widcha.adb
	s-widcha.ads s-widenu.adb s-widenu.ads s-widlli.adb
	s-widlli.ads s-widllu.adb s-widllu.ads s-widwch.adb
	s-widwch.ads s-wwdcha.adb s-wwdcha.ads s-wwdenu.adb
	s-wwdenu.ads s-wwdwch.adb s-wwdwch.ads scans.adb scans.ads
	scn-nlit.adb scn-slit.adb scn.adb scn.ads sdefault.ads sem.adb
	sem.ads sem_aggr.adb sem_aggr.ads sem_attr.adb sem_attr.ads
	sem_case.adb sem_case.ads sem_cat.adb sem_cat.ads sem_ch10.adb
	sem_ch10.ads sem_ch11.adb sem_ch11.ads sem_ch12.adb
	sem_ch12.ads sem_ch13.adb sem_ch13.ads sem_ch2.adb sem_ch2.ads
	sem_ch3.adb sem_ch3.ads sem_ch4.adb sem_ch4.ads sem_ch5.adb
	sem_ch5.ads sem_ch6.adb sem_ch6.ads sem_ch7.adb sem_ch7.ads
	sem_ch8.adb sem_ch8.ads sem_ch9.adb sem_ch9.ads sem_disp.adb
	sem_disp.ads sem_dist.adb sem_dist.ads sem_elab.adb
	sem_elab.ads sem_elim.adb sem_elim.ads sem_eval.adb
	sem_eval.ads sem_intr.adb sem_intr.ads sem_maps.adb
	sem_maps.ads sem_mech.adb sem_mech.ads sem_prag.adb
	sem_prag.ads sem_res.adb sem_res.ads sem_smem.adb sem_smem.ads
	sem_type.adb sem_type.ads sem_util.adb sem_util.ads
	sem_vfpt.adb sem_vfpt.ads sem_warn.adb sem_warn.ads
	sfn_scan.adb sfn_scan.ads sinfo-cn.adb sinfo-cn.ads sinfo.adb
	sinfo.ads sinfo.h sinput-l.adb sinput-l.ads sinput-p.adb
	sinput-p.ads sinput.adb sinput.ads snames.adb snames.ads
	snames.h sprint.adb sprint.ads stand.adb stand.ads stringt.adb
	stringt.ads stringt.h style.adb style.ads stylesw.adb
	stylesw.ads switch.adb switch.ads sysdep.c system.ads
	table.adb table.ads targparm.adb targparm.ads targtyps.c
	tbuild.adb tbuild.ads trans.c tree_gen.adb tree_gen.ads
	tree_in.adb tree_in.ads tree_io.adb tree_io.ads treepr.adb
	treepr.ads treeprs.ads treeprs.adt ttypef.ads ttypes.ads
	types.adb types.ads types.h uintp.adb uintp.ads uintp.h
	uname.adb uname.ads urealp.adb urealp.ads urealp.h usage.adb
	usage.ads utils.c utils2.c validsw.adb validsw.ads
	widechar.adb widechar.ads xeinfo.adb xnmake.adb xr_tabls.adb
	xr_tabls.ads xref_lib.adb xref_lib.ads xsinfo.adb xsnames.adb
	xtreeprs.adb: Correct statements in comments about maintainership
	of GNAT.

From-SVN: r58442
2002-10-23 07:33:35 +00:00
Geoffrey Keating
6cbcc54138 Delete all lines containing "$Revision:".
* xeinfo.adb: Don't look for revision numbers.
	* xnmake.adb: Likewise.
	* xsinfo.adb: Likewise.
	* xsnames.adb: Likewise.
	* xtreeprs.adb: Likewise.

From-SVN: r50768
2002-03-14 11:00:22 +00:00
Geert Bosch
07fc65c47c 41intnam.ads, [...]: Merge in ACT changes.
* 41intnam.ads, 42intnam.ads, 4aintnam.ads, 4cintnam.ads,
	4dintnam.ads, 4gintnam.ads, 4hintnam.ads, 4lintnam.ads,
	4mintnam.ads, 4pintnam.ads, 4rintnam.ads, 4sintnam.ads,
	4uintnam.ads, 4vcalend.adb, 4zintnam.ads, 52system.ads,
	5amastop.adb, 5asystem.ads, 5ataprop.adb, 5atpopsp.adb,
	5avxwork.ads, 5bosinte.adb, 5bsystem.ads, 5esystem.ads,
	5fsystem.ads, 5ftaprop.adb, 5ginterr.adb, 5gmastop.adb,
	5gsystem.ads, 5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads,
	5hparame.ads, 5hsystem.ads, 5htaprop.adb, 5htraceb.adb,
	5itaprop.adb, 5ksystem.ads, 5kvxwork.ads, 5lintman.adb,
	5lsystem.ads, 5mvxwork.ads, 5ninmaop.adb, 5nosinte.ads,
	5ntaprop.adb, 5ointerr.adb, 5omastop.adb, 5oosinte.adb,
	5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5pvxwork.ads,
	5qtaprop.adb, 5sintman.adb, 5ssystem.ads, 5staprop.adb,
	5stpopse.adb, 5svxwork.ads, 5tosinte.ads, 5uintman.adb,
	5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vintman.adb,
	5vmastop.adb, 5vparame.ads, 5vsystem.ads, 5vtaprop.adb,
	5vtpopde.adb, 5wmemory.adb, 5wsystem.ads, 5wtaprop.adb,
	5ysystem.ads, 5zinterr.adb, 5zintman.adb, 5zosinte.adb,
	5zosinte.ads, 5zsystem.ads, 5ztaprop.adb, 6vcpp.adb, 6vcstrea.adb,
	7sintman.adb, 7staprop.adb, 7stpopsp.adb, 9drpc.adb,
	Make-lang.in, Makefile.in, a-caldel.adb, a-comlin.ads,
	a-dynpri.adb, a-except.adb, a-except.ads, a-finali.adb,
	a-ncelfu.ads, a-reatim.adb, a-retide.adb, a-stream.ads,
	a-ststio.adb, a-ststio.ads, a-stwifi.adb, a-tags.adb, a-tasatt.adb,
	a-textio.adb, a-tideau.adb, a-tiflau.adb, a-tigeau.adb,
	a-tigeau.ads, a-tiinau.adb, a-timoau.adb, a-witeio.adb,
	a-wtdeau.adb, a-wtenau.adb, a-wtflau.adb, a-wtgeau.adb,
	a-wtgeau.ads, a-wtinau.adb, a-wtmoau.adb, ada-tree.def, ada-tree.h,
	adaint.c, adaint.h, ali-util.adb, ali.adb, ali.ads, atree.adb,
	atree.ads, atree.h, back_end.adb, bcheck.adb, bindgen.adb,
	bindusg.adb, checks.adb, comperr.adb, config-lang.in, csets.adb,
	csets.ads, cstand.adb, cstreams.c, debug.adb, debug.ads, decl.c,
	einfo.adb, einfo.ads, einfo.h, elists.h, errout.adb, errout.ads,
	eval_fat.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
	exp_ch12.adb, exp_ch13.adb, exp_ch2.adb, exp_ch3.adb, exp_ch3.ads,
	exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch7.ads,
	exp_ch9.adb, exp_ch9.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads,
	exp_dist.adb, exp_fixd.adb, exp_intr.adb, exp_pakd.adb,
	exp_prag.adb, exp_strm.adb, exp_util.adb, exp_util.ads,
	expander.adb, expect.c, fe.h, fmap.adb, fmap.ads, fname-uf.adb,
	freeze.adb, frontend.adb, g-awk.adb, g-cgideb.adb, g-comlin.adb,
	g-comlin.ads, g-debpoo.adb, g-dirope.adb, g-dirope.ads,
	g-dyntab.adb, g-expect.adb, g-expect.ads, g-io.ads, g-io_aux.adb,
	g-io_aux.ads, g-locfil.adb, g-locfil.ads, g-os_lib.adb,
	g-os_lib.ads, g-regexp.adb, g-regpat.adb, g-socket.adb,
	g-socket.ads, g-spipat.adb, g-table.adb, g-trasym.adb,
	g-trasym.ads, gigi.h, gmem.c, gnat1drv.adb, gnatbind.adb, gnatbl.c,
	gnatchop.adb, gnatcmd.adb, gnatdll.adb, gnatfind.adb, gnatlbr.adb,
	gnatlink.adb, gnatls.adb, gnatmem.adb, gnatprep.adb, gnatvsn.ads,
	gnatxref.adb, hlo.adb, hostparm.ads, i-cobol.adb, i-cpp.adb,
	i-cstrea.ads, i-cstrin.adb, i-pacdec.adb, i-vxwork.ads,
	impunit.adb, init.c, inline.adb, io-aux.c, layout.adb, lib-load.adb,
	lib-util.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb,
	lib-xref.ads, lib.adb, lib.ads, make.adb, makeusg.adb, mdll.adb,
	memroot.adb, misc.c, mlib-tgt.adb, mlib-utl.adb, mlib-utl.ads,
	mlib.adb, namet.adb, namet.ads, namet.h, nlists.h, nmake.adb,
	nmake.ads, nmake.adt, opt.adb, opt.ads, osint.adb, osint.ads,
	output.adb, output.ads, par-ch2.adb, par-ch3.adb, par-ch5.adb,
	par-prag.adb, par-tchk.adb, par-util.adb, par.adb, prj-attr.adb,
	prj-dect.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj-part.adb,
	prj-proc.adb, prj-strt.adb, prj-tree.adb, prj-tree.ads, prj.adb,
	prj.ads, raise.c, raise.h, repinfo.adb, restrict.adb, restrict.ads,
	rident.ads, rtsfind.adb, rtsfind.ads, s-arit64.adb, s-asthan.adb,
	s-atacco.adb, s-atacco.ads, s-auxdec.adb, s-crc32.adb, s-crc32.ads,
	s-direio.adb, s-fatgen.adb, s-fileio.adb, s-finimp.adb,
	s-gloloc.adb, s-gloloc.ads, s-interr.adb, s-mastop.adb,
	s-mastop.ads, s-memory.adb, s-parame.ads, s-parint.adb,
	s-pooglo.adb, s-pooloc.adb, s-rpc.adb, s-secsta.adb, s-sequio.adb,
	s-shasto.adb, s-soflin.adb, s-soflin.ads, s-stache.adb,
	s-taasde.adb, s-taasde.ads, s-tadeca.adb, s-tadeca.ads,
	s-tadert.adb, s-tadert.ads, s-taenca.adb, s-taenca.ads,
	s-taprob.adb, s-taprop.ads, s-tarest.adb, s-tasdeb.adb,
	s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.ads,
	s-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
	s-tassta.adb, s-tasuti.adb, s-tasuti.ads, s-tataat.adb,
	s-tataat.ads, s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
	s-tposen.adb, s-tposen.ads, s-traceb.adb, s-traceb.ads,
	s-unstyp.ads, s-widenu.adb, scn-nlit.adb, scn.adb, sem.adb,
	sem_aggr.adb, sem_attr.adb, sem_attr.ads, sem_case.adb,
	sem_ch10.adb, sem_ch11.adb, sem_ch11.ads, sem_ch12.adb,
	sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch3.adb, sem_ch3.ads,
	sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb,
	sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_disp.adb, sem_dist.adb,
	sem_elab.adb, sem_elim.adb, sem_elim.ads, sem_eval.adb,
	sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb,
	sem_type.adb, sem_util.adb, sem_util.ads, sem_vfpt.adb,
	sem_warn.adb, sinfo.adb, sinfo.ads, sinfo.h, sinput-l.adb,
	sinput-l.ads, sinput.adb, sinput.ads, snames.adb, snames.ads,
	snames.h, sprint.adb, sprint.ads, stringt.adb, stringt.ads,
	stringt.h, style.adb, switch.adb, switch.ads, sysdep.c, system.ads,
	table.adb, targparm.adb, targparm.ads, targtyps.c, tbuild.adb,
	tbuild.ads, tracebak.c, trans.c, tree_gen.adb, tree_io.adb,
	treepr.adb, treepr.ads, treeprs.ads, treeprs.adt, ttypes.ads,
	types.adb, types.ads, types.h, uintp.ads, urealp.ads, usage.adb,
	utils.c, utils2.c, validsw.adb, xnmake.adb, xr_tabls.adb,
	xr_tabls.ads, xref_lib.adb, xref_lib.ads : Merge in ACT changes.

	* 1ssecsta.adb, 1ssecsta.ads, a-chlat9.ads, a-cwila9.ads,
	g-enblsp.adb, g-md5.adb, g-md5.ads, gnatname.adb, gnatname.ads,
	mkdir.c, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads,
	osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads : New files

	* 3lsoccon.ads, 5qparame.ads, 5qvxwork.ads, 5smastop.adb,
	5zparame.ads, gnatmain.adb, gnatmain.ads, gnatpsys.adb : Removed

	* mdllfile.adb, mdllfile.ads, mdlltool.adb, mdlltool.ads : Renamed
	to mdll-fil.ad[bs] and mdll-util.ad[bs]

	* mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads : Renamed
	from mdllfile.ad[bs] and mdlltool.ad[bs]

From-SVN: r50451
2002-03-08 21:11:04 +01:00
Joseph Myers
44d6a70684 5ataprop.adb, [...]: Fix spelling errors.
* 5ataprop.adb, 5atpopsp.adb, 5ftaprop.adb, 5gmastop.adb,
	5gtaprop.adb, 5htaprop.adb, 5itaprop.adb, 5lintman.adb,
	5omastop.adb, 5oosinte.adb, 5otaprop.adb, 5staprop.adb,
	5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb, 5wintman.adb,
	5wtaprop.adb, 5zinterr.adb, 5ztaprop.adb, 6vcstrea.adb,
	7sintman.adb, 7staprop.adb, 9drpc.adb, ChangeLog, Makefile.in,
	a-except.adb, a-tags.ads, a-tasatt.adb, a-teioed.adb,
	a-textio.ads, a-witeio.ads, a-wtedit.adb, ali.ads, comperr.adb,
	cstand.adb, einfo.ads, errout.adb, exp_ch11.adb, exp_ch2.adb,
	exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch9.adb,
	exp_util.adb, exp_util.ads, fname-uf.adb, g-cgi.ads, g-exctra.ads,
	g-expect.ads, g-regist.adb, g-spipat.adb, gnatchop.adb,
	gnatlink.adb, gnatls.adb, gnatmain.adb, gnatmem.adb, init.c,
	make.adb, make.ads, mdlltool.adb, nlists.ads, osint.ads,
	par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par.adb,
	repinfo.adb, s-fatflt.ads, s-fatlfl.ads, s-fatllf.ads,
	s-fatsfl.ads, s-finimp.adb, s-finimp.ads, s-interr.adb,
	s-secsta.ads, s-shasto.ads, s-stalib.adb, s-stalib.ads,
	s-tarest.ads, s-tasdeb.adb, s-tassta.adb, s-tassta.ads,
	s-vaflop.ads, scans.ads, scn.adb, sem.ads, sem_aggr.adb,
	sem_attr.adb, sem_case.ads, sem_ch10.adb, sem_ch12.adb,
	sem_ch13.adb, sem_ch3.adb, sem_ch3.ads, sem_ch5.adb, sem_ch7.adb,
	sem_ch8.adb, sem_ch8.ads, sem_type.adb, sem_util.ads, sinfo.ads,
	sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
	spelling errors.

From-SVN: r48055
2001-12-16 01:13:56 +00:00
Geert Bosch
d087cd965e sem_ch3.adb: Clarify some ???.
* sem_ch3.adb: Clarify some ???.

	* exp_util.adb (Must_Be_Aligned): Removed, replaced by
	Exp_Pakd.Known_Aligned_Enough

	* sem_ch13.adb (Check_Address_Alignment): Removed, extended
	version is moved to Exp_Ch13.

From-SVN: r47899
2001-12-11 23:25:15 +01:00
Joseph Myers
638e383e25 86numaux.adb, [...]: Fix spelling errors.
* 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, decl.c, exp_ch6.adb,
	exp_ch9.adb, exp_util.adb, fname-sf.ads, freeze.ads, g-awk.adb,
	g-comlin.ads, g-dirope.adb, g-dyntab.ads, g-socket.ads,
	g-table.ads, g-traceb.ads, gnat-style.texi, gnatchop.adb, init.c,
	layout.adb, layout.ads, mdllfile.ads, mlib-fil.ads, osint.ads,
	s-fatgen.adb, s-imgrea.adb, s-taprop.ads, s-tasdeb.ads,
	sem_aggr.adb, sem_attr.adb, sem_case.ads, sem_ch13.adb,
	sem_ch3.adb, sem_elab.adb, sem_maps.ads, sem_res.adb,
	sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
	types.ads, urealp.adb: Fix spelling errors.

From-SVN: r46581
2001-10-28 12:56:08 +00:00
Richard Kenner
996ae0b0ae New Language: Ada
From-SVN: r45959
2001-10-02 10:52:00 -04:00