1. 15 Nov, 2005 40 commits
    • xgnatugn.adb: Replace invalid membership test by 'Valid · 45b5a7a1
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* xgnatugn.adb: Replace invalid membership test by 'Valid
      
      From-SVN: r107013
      Robert Dewar committed
    • tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it designates a… · 1c9e0120
      tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it designates a non existent directory.
      
      2005-11-14  Vincent Celier  <celier@adacore.com>
      
      	* tempdir.adb (Tempdir): Do not use environment variable TMPDIR if it
      	designates a non existent directory.
      
      From-SVN: r107012
      Vincent Celier committed
    • switch.adb (Bad_Switch): New procedure · d4deddd7
      2005-11-14  Vincent Celier  <celier@adacore.com>
      
      	* switch.adb (Bad_Switch): New procedure
      	(Scan_Nat, Scan_Pos): Directly call Osint.Fail with the appropriate
      	message when in error.
      
      	* switch.ads (Bad_Switch, Bad_Switch_Value, Missing_Switch_Value,
      	Too_Many_Output_Files): Remove declarations, no longer used.
      	(Scan_Nat): New parameter Switch
      	(Scan_Pos): Ditto
      	(Bad_Switch): New procedure
      
      	* switch-b.adb (Scan_Binder_Switches): Replace "raise Bad_Switch;"
      	with call to new procedure Bad_Switch. Call Scan_Pos and Scan_Natwith
      	new parameter Switch. Replace "raise Too_Many_Output_Files;" with call
      	to Osint.Fail. Do not handle any exception.
      
      From-SVN: r107011
      Vincent Celier committed
    • s-stoele.adb: Fix code for Address mod Storage_Offset for negative offset values · 49c041e3
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* s-stoele.adb: Fix code for Address mod Storage_Offset for negative
      	offset values
      
      From-SVN: r107010
      Robert Dewar committed
    • s-finroo.ads, [...] (Read): Addition of "not null" to the anonymous access. · 5e804c9f
      2005-11-14  Javier Miranda  <miranda@adacore.com>
      
      	* s-finroo.ads, s-finroo.adb (Read): Addition of "not null" to the
      	anonymous access.
      	(Write): Addition of "not null" to the anonymous access.
      	(Read): Addition of "not null" to the anonymous access.
      	(Write): Addition of "not null" to the anonymous access.
      
      	* s-strxdr.adb, s-stratt.ads, s-stratt.adb (I_AD, I_AS, I_B, I_C, I_F,
      	I_I, I_LF, I_LI, I_LLF, I_LLI, I_LLU, I_LU, I_SF, I_SI, I_SSI, I_SSU,
      	I_SU, I_U, I_WC): Addition of "not null" to the anonymous access.
      	(W_AD, W_AS, W_B, W_C, W_F, W_I, W_LF, W_LI, W_LLF, W_LLI, W_LLU,
      	W_LU, W_SF, W_SI, W_SSI, W_SSU, W_SU, W_U, W_WC): Addition of
      	"not null" to the anonymous access.
      
      From-SVN: r107009
      Javier Miranda committed
    • sem_warn.ads, [...] (Publicly_Referenceable): Generic formals of a generic… · b47efa93
      sem_warn.ads, [...] (Publicly_Referenceable): Generic formals of a generic subprogram are not visible outside the body.
      
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      	    Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.ads, sem_warn.adb (Publicly_Referenceable): Generic formals
      	of a generic subprogram are not visible outside the body.
      	(Set_Warning_Switch): New procedure (code to set warning mode moved
      	here from Switch.C so that it can be shared by pragma processing.
      	(Check_References): Special case warning for non-modified non-imported
      	volatile objects.
      	* par-prag.adb: Modify processing of pragma Warnings to accomodate new
      	form with a string literal argument
      
      From-SVN: r107008
      Ed Schonberg committed
    • sem_util.ads, [...]: Change name Is_Package to Is_Package_Or_Generic_Package. · 21024a39
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      	    Thomas Quinot  <quinot@adacore.com>
      	    Hristian Kirtchev  <kirtchev@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.ads, sem_util.adb: Change name Is_Package to
      	Is_Package_Or_Generic_Package.
      	(Check_Obsolescent): New procedure.
      	(Set_Is_Public): Remove obsolete junk test.
      	(Set_Public_Status): Do not set Is_Public on an object whose declaration
      	occurs within a handled_sequence_of_statemets.
      	(Is_Controlling_Limited_Procedure): Factor some of the logic, account
      	for a parameterless procedure.
      	(Enter_Name): Recognize renaming declarations created for private
      	component of a protected type within protected operations, so that
      	the source name of the component can be used in the debugger.
      
      From-SVN: r107007
      Robert Dewar committed
    • re PR ada/15604 (Ambiguous aggregate -- Accepts invalid) · 861d669e
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      	    Javier Miranda  <miranda@adacore.com>
      
      	PR ada/15604
      
      	* sem_type.adb (Covers): In an inlined body, a composite type matches
      	a private type whose full view is a composite type.
      	(Interface_Present_In_Ancestor): Protect the frontend against
      	previously detected errors to ensure that its compilation
      	with assertions enabled gives the same output that its
      	compilation without assertions.
      	(Interface_Present_In_Ancestor): Add support for private types.
      	Change name In_Actual to In_Generic_Actual (clean up)
      	(Disambiguate): New predicate In_Actual, to recognize expressions that
      	appear in the renaming declaration generated for generic actuals, and
      	which must be resolved in the outer context.
      
      From-SVN: r107006
      Ed Schonberg committed
    • sem_res.adb (Resolve_Call): Provide a better error message whenever a procedure… · 9ebe3743
      sem_res.adb (Resolve_Call): Provide a better error message whenever a procedure call is used as a select...
      
      2005-11-14  Hristian Kirtchev  <kirtchev@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      	    Robert Dewar  <dewar@adacore.com>
      	    Thomas Quinot  <quinot@adacore.com>
      
      	* sem_res.adb (Resolve_Call): Provide a better error message whenever
      	a procedure call is used as a select statement trigger and is not an
      	entry renaming or a primitive of a limited interface.
      	(Valid_Conversion): If the operand has a single interpretation do not
      	remove address operations.
      	(Check_Infinite_Recursion): Skip freeze nodes when looking for a raise
      	statement to inhibit warning.
      	(Resolve_Unary_Op): Do not produce a warning when
      	processing an expression of the form -(A mod B)
      	Use Universal_Real instead of Long_Long_Float when we need a high
      	precision float type for the generated code (prevents gratuitous
      	Vax_Float stuff when pragma Float_Representation (Vax_Float) used)
      	(Resolve_Concatenation_Arg): Improve error message when argument is an
      	ambiguous call to a function that returns an array.
      	(Make_Call_Into_Operator, Operand_Type_In_Scope): Do not check that
      	there is an implicit operator in the given scope if we are within an
      	instance: legality check has been performed on the generic.
      	(Resolve_Unary_Op): Apply warnings checks on argument of Abs operator
      	after resolving operand, to avoid false warnings on overloaded calls.
      
      From-SVN: r107005
      Hristian Kirtchev committed
    • sem_eval.adb: Implement d.f flag · 0356699b
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_eval.adb: Implement d.f flag
      	(Subtype_Statically_Match): A generic actual type has unknown
      	discriminants when the corresponding actual has a similar partial view.
      	If the routine is called to validate the signature of an inherited
      	operation in a child instance, the generic actual matches the full view,
      
      From-SVN: r107004
      Robert Dewar committed
    • sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic context... · d4810530
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch8.adb (Analyze_Subprogram_Renaming): In a generic context, do
      	not try to rewrite a renamed stream attribute, because the operations
      	on the type may not have been generated.
      	Handle properly a renaming_as_body generated for a stream operation
      	whose default is abstract because the object type itself is abstract.
      	(Find_Type): If the type is incomplete and appears as the prefix of a
      	'Class reference, it is tagged, and its list of primitive operations
      	must be initialized properly.
      	(Chain_Use_Clauses): When chaining the use clauses that appear in the
      	private declaration of a parent unit, prior to compiling the private
      	part of a child unit, find on the scope stack the proper parent entity
      	on which to link the use clause.
      	(Note_Redundant_Use): Emit a warning when a redundant use clause is
      	detected.
      	(Analyze_Object_Renaming): An attribute reference is not a legal object
      	if it is not a function call.
      
      From-SVN: r107003
      Ed Schonberg committed
    • sem_ch7.adb (Install_Parent_Private_Declarations): New procedure nested within… · a59e9305
      sem_ch7.adb (Install_Parent_Private_Declarations): New procedure nested within Analyze_Package_Specification to install the...
      
      2005-11-14  Gary Dismukes  <dismukes@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch7.adb (Install_Parent_Private_Declarations): New procedure
      	nested within Analyze_Package_Specification to install the private
      	declarations and use clauses within each of the parent units of a
      	package instance of a generic child package.
      	(Analyze_Package_Specification): When entering a private part of a
      	package associated with a generic instance or formal package, the
      	private declarations of the parent must be installed (by calling new
      	procedure Install_Parent_Private_Declarations).
      	Change name Is_Package to Is_Package_Or_Generic_Package
      	(Preserve_Full_Attributes): For a synchronized type, the corresponding
      	record is absent in a generic context, which does not indicate a
      	compiler error.
      
      From-SVN: r107002
      Gary Dismukes committed
    • sem_ch6.adb (Check_Conformance): The null-exclusion feature can be omitted in… · e660dbf7
      sem_ch6.adb (Check_Conformance): The null-exclusion feature can be omitted in case of stream attribute subprograms.
      
      2005-11-14  Javier Miranda  <miranda@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Check_Conformance): The null-exclusion feature can be
      	omitted in case of stream attribute subprograms.
      	(Check_Inline_Pragma): Handle Inline and Inline_Always pragmas that
      	appear immediately after a subprogram body, when there is no previous
      	subprogram declaration.
      	Change name Is_Package to Is_Package_Or_Generic_Package
      	(Process_Formals): A non null qualifier on a non null named access
      	type is not an error, and is a warning only if Redundant_Constructs
      	are flagged.
      
      From-SVN: r107001
      Javier Miranda committed
    • sem_ch3.ads, [...] (Build_Discriminal): Add link to original discriminant. · 950d3e7d
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      	    Javier Miranda  <miranda@adacore.com>
      
      	* sem_ch3.ads, sem_ch3.adb (Build_Discriminal): Add link to original
      	discriminant.
      	(Build_Private_Derived_Type): The entity of the created full view of the
      	derived type does not come from source. If after installing the private
      	declarations of the parent scope the parent is still private, use its
      	full view to construct the full declaration of the derived type.
      	(Build_Derived_Record_Type): Relax the condition that controls the
      	execution of the check that verifies that the partial view and
      	the full view agree in the set of implemented interfaces. In
      	addition, this test now only takes into account the progenitors.
      	(Derive_Interface_Subprograms): No need to derive subprograms
      	of ancestors that are interfaces.
      	(Derive_Subprograms): Remove formal No_Predefined_Prims and the
      	associated code.
      	Change name Is_Package to Is_Package_Or_Generic_Package
      	(Complete_Subprograms_Derivation): Handle the case in which the full
      	view is a transitive derivation of the ancestor of the partial view.
      	(Process_Full_View): Rename local subprogram Find_Interface_In_
      	Descendant to Find_Ancestor_Interface to leave the code more clear.
      	Remove wrong code that avoids the generation of an error message
      	when the immediate ancestor of the partial view is an interface.
      	In addition some minor reorganization of the code has been done to
      	leave it more clear.
      	(Analyze_Type_Declaration): If type has previous incomplete tagged
      	partial view, inherit properly its primitive operations.
      	(Collect_Interfaces): Make public, for analysis of formal
      	interfaces.
      	(Analyze_Interface_Declaration): New procedure for use for regular and
      	formal interface declarations.
      	(Build_Derived_Record_Type): Add support for private types to the code
      	that checks if a tagged type implements abstract interfaces.
      	(Check_Aliased_Component_Type): The test applies in the spec of an
      	instance as well.
      	(Access_Type_Declaration): Clean up declaration of malformed type
      	declared as an access to its own classwide type, to prevent cascaded
      	crash.
      	(Collect_Interfaces): For private extensions and for derived task types
      	and derived protected types, the parent may be an interface that must
      	be included in the interface list.
      	(Access_Definition): If the designated type is an interface that may
      	contain tasks, create Master_Id for it before analyzing the expression
      	of the declaration, which may be an allocator.
      	(Record_Type_Declaration): Set properly the interface kind, for use
      	in allocators, the creation of master id's for task interfaces, etc.
      
      From-SVN: r107000
      Ed Schonberg committed
    • sem_ch12.ads, [...] (Map_Entities): Exclude entities whose names are internal... · 04814dad
      2005-11-14  Gary Dismukes  <dismukes@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      	    Gary Dismukes  <dismukes@adacore.com>
      	    Thomas Quinot  <quinot@adacore.com>
      
      	* sem_ch12.ads, sem_ch12.adb (Map_Entities): Exclude entities whose
      	names are internal, because they will not have a corresponding partner
      	in the actual package.
      	(Analyze_Formal_Package): Move the setting of the formal package spec's
      	Generic_Parent field so that it occurs prior to analyzing the package,
      	to allow proper operation of Install_Parent_Private_Declarations.
      	(Analyze_Package_Instantiation): Set the instantiated package entity's
      	Package_Instantiation field.
      	(Get_Package_Instantiation_Node): Move declaration to package spec.
      	Retrieve the N_Package_Instantiation node when the Package_Instantiation
      	field is present.
      	(Check_Generic_Child_Unit): Within an inlined call, the only possible
      	instantiation is Unchecked_Conversion, for which no parents are needed.
      	(Inline_Instance_Body): Deinstall and record the use_clauses for all
      	parent scopes of a scope being removed prior to inlining an instance
      	body.
      	(Analyze_Package_Instantiation): Do not perform front-end inlining when
      	the current context is itself an instance within a non-instance child
      	unit, to prevent scope stack errors.
      	(Save_References): If the node is an aggregate that is an actual in a
      	call, rewrite as a qualified expression to preserve some type
      	information, to resolve possible ambiguities in the instance.
      	(Instance_Parent_Unit): New global variable to record the ultimate
      	parent unit associated with a generic child unit instance (associated
      	with the existing Parent_Unit_Visible flag).
      	(type Instance_Env): New component Instance_Parent_Unit for stacking
      	parents recorded in the global Instance_Parent_Unit.
      	(Init_Env): Save value of Instance_Parent_Unit in the Instance_Env
      	stack.
      	(Install_Spec): Save the parent unit entity in Instance_Parent_Unit when
      	it's not a top-level unit, and only do this if Instance_Parent_Unit is
      	not already set. Replace test of Is_Child_Unit with test of parent's
      	scope against package Standard. Add comments and a ??? comment.
      	(Remove_Parent): Revise condition for resetting Is_Immediately_Visible
      	on a child instance parent to test that the parent equals
      	Instance_Parent rather than simply checking that the unit is not a
      	child unit.
      	(Restore_Env): Restore value of Instance_Parent_Unit from Instance_Env.
      	(Validate_Derived_Interface_Type_Instance): Verify that all ancestors of
      	a formal interface are ancestors of the corresponding actual.
      	(Validate_Formal_Interface_Type): Additional legality checks.
      	(Analyze_Formal_Derived_Interface_Type): New procedure to handle formal
      	interface types with ancestors.
      	(Analyze_Formal_Package): If formal is a renaming, use renamed entity
      	to diagnose attempts to use generic within its own declaration.
      
      From-SVN: r106999
      Gary Dismukes committed
    • sem_ch10.adb: Change name Is_Package to Is_Package_Or_Generic_Package Do not give obsolescent... · 81d435f3
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch10.adb: Change name Is_Package to Is_Package_Or_Generic_Package
      	Do not give obsolescent warning on with of subprogram (since we
      	diagnose calls)
      	(Analyze_With_Clause): Add test for obsolescent package
      	(Install_Context_Clauses): If the unit is the body of a child unit, do
      	not install twice the private declarations of the parents, to prevent
      	circular lists of Use_Clauses in a parent.
      	(Implicit_With_On_Parent): Do add duplicate with_clause on parent when
      	compiling body of child unit.
      	Use new class N_Subprogram_Instantiation
      	(Expand_With_Clause): If this is a private with_clause for a child unit,
      	appearing in the context of a package declaration, then the implicit
      	with_clauses generated for parent units are private as well.
      	(License_Check): Do not generate message if with'ed unit is internal
      
      From-SVN: r106998
      Robert Dewar committed
    • sem_aggr.adb (Resolve_Aggregate): An others choice is legal on the rhs of an assignment even if... · d8387153
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_aggr.adb (Resolve_Aggregate): An others choice is legal on the
      	rhs of an assignment even if the type is unconstrained, when the
      	context is non-expanding.
      	In an inlined body, if the context type is private,
      	resolve with its full view, which must be a composite type.
      
      From-SVN: r106997
      Ed Schonberg committed
    • prj-pp.adb (Print): Do not output the with statement if the associated name is empty... · a05076ba
      2005-11-14  Emmanuel Briot  <briot@adacore.com>
      
      	* prj-pp.adb (Print): Do not output the with statement if the
      	associated name is empty, which happens for virtual extending projects.
      	(Print): Preserve the "extends all" attribute when printing the project.
      
      	* prj-tree.ads (String_Value_Of): Add comment about returned value for
      	a virtual extending project.
      
      From-SVN: r106996
      Emmanuel Briot committed
    • prj-part.adb (Create_Virtual_Extending_Project): Put virtual project into… · 9cd6ae61
      prj-part.adb (Create_Virtual_Extending_Project): Put virtual project into Prj.Tree.Tree_Private_Part.Projects_Htable for GPS.
      
      2005-11-14  Vincent Celier  <celier@adacore.com>
      
      	* prj-part.adb (Create_Virtual_Extending_Project): Put virtual project
      	into Prj.Tree.Tree_Private_Part.Projects_Htable for GPS.
      
      From-SVN: r106995
      Vincent Celier committed
    • prj-ext.adb: Take into account new environment variable GPR_PROJECT_PATH. · ab9f47f1
      2005-11-14  Vincent Celier  <celier@adacore.com>
      
      	* prj-ext.adb: Take into account new environment variable
      	GPR_PROJECT_PATH. Warn if both GPR_PROJECT_PATH and ADA_PROJECT_PATH
      	are defined.
      	(Prj.Ext elaboration): For each directory in the ADA_PROJECT_PATH,
      	normalize its path name, making it absolute and resolving symbolic
      	links, and replace the original if resolved path is different.
      
      From-SVN: r106994
      Vincent Celier committed
    • par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit syntax, which… · 3c43f853
      par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit syntax, which could cause compiler hangs.
      
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* par-ch10.adb (P_Compilation_Unit): Add defenses against junk unit
      	syntax, which could cause compiler hangs.
      
      From-SVN: r106993
      Robert Dewar committed
    • namet.h: (Column_Numbe): New type. · 62157e75
      2005-11-14  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* namet.h: (Column_Numbe): New type.
      	(Get_Column_Number): Define to sinput__get_column_number.
      	(Instantiation): Define to sinput__instantiation.
      	(Get_Column_Number): Declare.
      	(Instantiation): Likewise.
      
      From-SVN: r106992
      Eric Botcazou committed
    • mdll.adb (Build_Reloc_DLL): Fix parameter handling when a map file is used. · 7f612e89
      2005-11-14  Pascal Obry  <obry@adacore.com>
      
      	* mdll.adb (Build_Reloc_DLL): Fix parameter handling when a map file is
      	used.
      	(Ada_Build_Reloc_DLL): Fix parameter handling when a map file is used.
      	In both cases the last argument was dropped.
      
      From-SVN: r106991
      Pascal Obry committed
    • Make-lang.in: Makefile automatically updated · dd489fe6
      2005-11-14  GNAT Script  <nobody@adacore.com>
      
      	* Make-lang.in: Makefile automatically updated
      
      From-SVN: r106990
      GNAT Script committed
    • make.adb (Compile_Sources): Change verbose message to minimum verbosity level… · a7ab2998
      make.adb (Compile_Sources): Change verbose message to minimum verbosity level High for "is in an Ada...
      
      2005-11-14  Vincent Celier  <celier@adacore.com>
      
      	* make.adb (Compile_Sources): Change verbose message to minimum
      	verbosity level High for "is in an Ada library", "is a read-only
      	library" and "is an internal library",
      	(Create_Binder_Mapping_File): Path name of ALI file for library project
      	must include the library directory, not the object directory.
      	(Scan_Make_Arg): Make sure that Switch.M.Scan_Make_Switches is called
      	for new switches -vl, -vm and -vh.
      	(Verbose_Msg): Add new defaulted parameter Minimum_Verbosity
      	(Check): Use minimum verbosity Medium for some Verbose_Msg calls
      	(Compile_Sources): Do not attempt to compile if an ALI file is missing
      	in a project that is externally built.
      	(Compute_All_Imported_Projects): New procedure
      	(Gnatmake): Check if importing libraries should be regenerated because
      	at least an imported library is more recent.
      	(Initialize): For each project compute the list of the projects it
      	imports directly or indirectly.
      	(Add_Library_Search_Dir): New procedure, used in place of
      	Add_Lib_Search_Dir in procedure Scan_Make_Arg so that absolute paths are
      	put in the search paths.
      	(Add_Source_Search_Dir): New procedure, used in place of
      	Add_Src_Search_Dir in procedure Scan_Make_Arg so that absolute paths are
      	put in the search paths.
      	(Mark_Directory): Resolve the absolute path the directory before marking
      	it.
      
      	* switch-m.adb (Scan_Make_Switches): Replace "raise Bad_Switch;" with
      	call to new procedure Bad_Switch. Call Scan_Pos with new parameter
      	Switch. Do not handle any exception.
      	(Scan_Make_Switches): Increment Ptr for new switches -vl, -vm and -vh
      	so that the switch is recognized as valid.
      	(Scan_Make_Switches): Implement new switches -vl, -vm and -vh.
      
      From-SVN: r106989
      Vincent Celier committed
    • lib-xref.adb (Generate_Definition, [...]): Treat the internal entity created for… · dff0475f
      lib-xref.adb (Generate_Definition, [...]): Treat the internal entity created for the declaration of a child subprogram...
      
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      
      	* lib-xref.adb (Generate_Definition, Generate_Reference): Treat the
      	internal entity created for the declaration of a child subprogram body
      	with no spec as coming from source, to generate proper cross-reference
      	information.
      
      From-SVN: r106988
      Ed Schonberg committed
    • interfac.ads: Change declarations of IEEE float types so that we no longer need a separate... · 70b352b5
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* interfac.ads: Change declarations of IEEE float types so that we no
      	longer need a separate version of this package for VMS.
      
      From-SVN: r106987
      Robert Dewar committed
    • init.c [VMS]: Don't install __gnat_error_handler if DBG$TDBG defined. · ec210799
      2005-11-14  Doug Rupp  <rupp@adacore.com>
      
      	* init.c [VMS]: Don't install __gnat_error_handler if DBG$TDBG defined.
      
      From-SVN: r106986
      Doug Rupp committed
    • g-spitbo.adb: (Hash): Rotate by 3 instead of 1 · 11bfd18a
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* g-spitbo.adb: (Hash): Rotate by 3 instead of 1
      
      From-SVN: r106985
      Robert Dewar committed
    • g-regpat.adb (Fail): raise Expression_Error including the diagnostic message, friendlier. · e49b74a9
      	* g-regpat.adb (Fail): raise Expression_Error including the diagnostic
      	message, friendlier.
      
      From-SVN: r106984
      Arnaud Charlet committed
    • gprep.adb: Implement -C switch to scan comments · 383b2b42
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      	    Vincent Celier  <celier@adacore.com>
      
      	* gprep.adb: Implement -C switch to scan comments
      
      	* scng.adb: Scan comment symbol separately if Replace_In_Comments set
      
      	* scans.ads: Comment updates (including new use of Tok_Comment in
      	preprocessing)
      
      	* opt.ads: Add documentation for flags that are used by gprmake,
      	currently and in the next version of gprmake.
      	(Verbosity_Level): New variable
      	Add Replace_In_Comments switch
      
      	* vms_data.ads: Add VMS equivalent for new gnatmake switches -vl, -vm
      	and -vm.
      	Add /REPLACE_IN_COMMENTS for gnatprep -C switch
      
      From-SVN: r106983
      Robert Dewar committed
    • gnatbind.adb (Is_Cross_Compiler): New function returning True for cross-compiler. · 0bce6c77
      2005-11-14  Pascal Obry  <obry@adacore.com>
      
      	* gnatbind.adb (Is_Cross_Compiler): New function returning True for
      	cross-compiler.
      	(Scan_Bind_Arg): Fail with an error message if -M option is used
      	on a native compiler.
      
      From-SVN: r106982
      Pascal Obry committed
    • g-debpoo.adb (Set_Valid): Use Integer_Address instead of Storage_Offset to avoid… · 2989065e
      g-debpoo.adb (Set_Valid): Use Integer_Address instead of Storage_Offset to avoid wrap around causing...
      
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* g-debpoo.adb (Set_Valid): Use Integer_Address instead of
      	Storage_Offset to avoid wrap around causing invalid results.
      
      From-SVN: r106981
      Robert Dewar committed
    • re PR ada/23732 ([ada] Library_Version still at 4.0 ?) · 2edf9900
      	PR ada/23732
      	* gnatvsn.ads (Library_Version): Bump to 4.1
      
      From-SVN: r106980
      Arnaud Charlet committed
    • freeze.adb (Freeze_Entity): For an access formal that is an access to subprogram... · 57747aec
      2005-11-14  Ed Schonberg  <schonberg@adacore.com>
      
      	* freeze.adb (Freeze_Entity): For an access formal that is an access
      	to subprogram, freeze the anonymous subprogram type at the same time,
      	to prevent later freezing in the wrong scope, such as the enclosing
      	subprogram body.
      	(Freeze_Entity): Freeze the equivalent_type of an access_to_protected_
      	subprogram whenever available.
      
      From-SVN: r106979
      Ed Schonberg committed
    • impunit.adb: Exclude container helper units not intended for use by users. · 6aea4c39
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* impunit.adb: Exclude container helper units not intended for use by
      	users.
      
      From-SVN: r106978
      Robert Dewar committed
    • exp_strm.adb (Build_Stream_Attr_Profile, [...]): Add the null-excluding… · 9f0eed34
      exp_strm.adb (Build_Stream_Attr_Profile, [...]): Add the null-excluding attribute to the first formal.
      
      2005-11-14  Javier Miranda  <miranda@adacore.com>
      
      	* exp_strm.adb (Build_Stream_Attr_Profile, Build_Stream_Function,
      	Build_Stream_Procedure): Add the null-excluding attribute to the first
      	formal.
      	This has no semantic meaning under Ada95 mode but it is a
      	requirement under Ada05 mode.
      
      	* par-ch3.adb (P_Access_Definition): Addition of warning message if
      	the null exclusion is used under Ada95 mode
      	(P_Null_Exclusion): The qualifier has no semantic meaning in Ada 95.
      	(P_Access_Definition): Remove assertion that forbids the use of
      	the null-exclusion feature in Ada95.
      
      From-SVN: r106977
      Javier Miranda committed
    • exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual subtype to… · 191cab8d
      exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual subtype to compute the size of the designated object at...
      
      2005-11-14  Thomas Quinot  <quinot@adacore.com>
      	    Robert Dewar  <dewar@adacore.com>
      	    Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_intr.adb (Expand_Unc_Deallocation): If GIGI needs an actual
      	subtype to compute the size of the designated object at run-time,
      	create such a subtype and store it in the Actual_Designated_Subtype
      	attribute of the N_Free_Statement.
      	Generate itype for classwide designated object in both cases of
      	user-specified storage pool: specific and class-wide, not only in the
      	specific case.
      	Raise CE when trying to set a not null access type object to null.
      	(Expand_Dispatching_Constructor_Call): Retrieve subprogram actual with
      	an explicit loop, because freeze nodes make its position variable.
      
      	* sem_intr.adb (Check_Intrinsic_Call): Given warning for freeing not
      	null object.
      
      From-SVN: r106976
      Thomas Quinot committed
    • exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when... · 65b1b431
      2005-11-14  Robert Dewar  <dewar@adacore.com>
      
      	* exp_fixd.adb: Use Universal_Real instead of Long_Long_Float when we
      	need a high precision float type for the generated code (prevents
      	gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float)
      	used).
      
      	* exp_imgv.adb: Use Universal_Real instead of Long_Long_Float when we
      	need a high precision float type for the generated code (prevents
      	gratuitous Vax_Float stuff when pragma Float_Representation (Vax_Float)
      	used).
      	(Expand_Width_Attribute): In configurable run-time, the attribute is not
      	allowed on non-static enumeration subtypes. Force a load error to emit
      	the correct diagnostic.
      
      From-SVN: r106975
      Robert Dewar committed
    • expect.c (__gnat_kill): Fix implementation... · 379ecbfa
      2005-11-14  Pascal Obry  <obry@adacore.com>
      
      	* expect.c (__gnat_kill) [Win32]: Fix implementation, the pid returned
      	by spawnve is a process handle, no need to convert. Add a parameter
      	close to control wether the process handle must be closed.
      	(__gnat_waitpid): Fix implementation, the pid returned by spawnve is
      	a process handle, not need to convert.
      	(__gnat_kill) [*]: Add dummy parameter close to match the Win32 spec.
      
      	* g-expect.adb: (Kill): Document the new close parameter.
      	(Close): Do not release the process handle in the kill there as
      	waitpid() is using it.
      	(Send_Signal): Release the process handle.
      
      From-SVN: r106974
      Pascal Obry committed