summaryrefslogtreecommitdiff
path: root/gcc/ada/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/ChangeLog')
-rw-r--r--gcc/ada/ChangeLog1374
1 files changed, 1374 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 3ec3e291cae..e3661882299 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,1377 @@
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * makeutl.adb, prj-nmsc.adb: Minor reformatting.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * exp_util.adb (Make_Invariant_Call): Use Check_Kind instead
+ of Check_Enabled.
+ * gnat_rm.texi (Check_Policy): Update documentation for new
+ Check_Policy syntax.
+ * sem_prag.adb (Check_Kind): Replaces Check_Enabled
+ (Analyze_Pragma, case Check_Policy): Rework to accomodate new
+ syntax (like Assertion_Policy).
+ * sem_prag.ads (Check_Kind): Replaces Check_Enabled.
+
+2013-04-12 Doug Rupp <rupp@adacore.com>
+
+ * init.c (SS$_CONTROLC, SS$_CONTINUE) [VMS]: New macros.
+ (__gnat_handle_vms_condition) [VMS]: Dispatch on the Crtl/C user
+ handler if installed.
+ * ctrl_c.c (__gnat_install_int_handler)
+ [VMS]: Install a dummy sigaction handler to trigger the real
+ user handler dispatch in init.c/__gnat_handle_vms_condition.
+ (__gnat_uninstall_int_handler) [VMS]: Likewise.
+
+2013-04-12 Vincent Celier <celier@adacore.com>
+
+ * clean.adb (Parse_Cmd_Line): Set Directories_Must_Exist_In_Projects
+ to False if switch is specified.
+ * makeutl.adb (Initialize_Source_Record): Do not look for the
+ object file if there is no object directory.
+ * opt.ads (Directories_Must_Exist_In_Projects): New Boolean
+ variable, defaulted to True.
+ * prj-nmsc.adb (Check_Library_Attributes): Do not fail if library
+ directory does not exist when Directories_Must_Exist_In_Projects is
+ False.
+ (Get_Directories): Do not fail when the object or the exec directory
+ do not exist when Directories_Must_Exist_In_Projects is False.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * namet.adb, namet.ads: Minor addition (7 arg version of Nam_In).
+ * exp_prag.adb, sem_ch3.adb, sem_intr.adb, sem_type.adb, exp_util.adb,
+ sem_aux.adb, exp_ch9.adb, sem_ch7.adb, sem_ch10.adb, sem_prag.adb,
+ par-ch2.adb, tbuild.adb, rtsfind.adb, freeze.adb, sem_util.adb,
+ sem_res.adb, sem_attr.adb, exp_ch2.adb, prj-makr.adb, sem_elab.adb,
+ exp_ch4.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, par-prag.adb,
+ prj-nmsc.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
+ sem_eval.adb, exp_intr.adb, sem_ch13.adb, exp_cg.adb, lib-xref.adb,
+ sem_disp.adb, exp_ch3.adb: Minor code reorganization (use Nam_In).
+
+2013-04-12 Doug Rupp <rupp@adacore.com>
+
+ * init.c: Don't clobber condition code on VMS.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * exp_aggr.adb: Minor reformatting.
+ * namet.ads, namet.adb (Nam_In): New functions.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * einfo.adb (Has_Dynamic_Predicate_Aspect): New flag.
+ (Has_Static_Predicate_Aspect): New flag.
+ * einfo.ads (Has_Dynamic_Predicate_Aspect): New flag.
+ (Has_Static_Predicate_Aspect): New flag.
+ * exp_ch9.adb: Minor reformatting.
+ * exp_util.adb (Make_Invariant_Call): Check_Enabled now handles
+ synonyms.
+ * gnat1drv.adb: Remove setting of Debug_Pragmas_Enabled,
+ since this switch is gone and control of Debug is done with
+ Assertions_Enabled.
+ * gnat_rm.texi: Update documentation for Assertion_Policy and
+ Check_Policy pragmas.
+ * opt.adb (Debug_Pragmas_Disabled[_Config]): Removed
+ (Debug_Pragmas_Enabled[_Config]): Removed Since debug now
+ controlled by Assertion_Enabled.
+ * opt.ads (Debug_Pragmas_Disabled[_Config]): Removed
+ (Debug_Pragmas_Enabled[_Config]): Removed Since debug now
+ controlled by Assertion_Enabled.
+ * par-ch2.adb (Scan_Pragma_Argument_Association): Allow new
+ 'Class forms.
+ * sem_attr.adb: Minor reformatting.
+ * sem_ch13.adb (Analyze_Aspect_Specification): Disable aspect
+ if DISABLE policy applies.
+ * sem_ch6.adb (Grab_PPC): Check original name of aspect for
+ aspect from pragma (Process_PPCs): Properly check assertion policy.
+ * sem_prag.adb (Check_Enabled): Rewritten for new Assertion_Policy
+ (Check_Appicable_Policy): New procedure.
+ (Is_Valid_Assertion_Kind): New function.
+ (Rewrite_Assertion_Kind): New procedure.
+ (Analyze_Pragma): Handle case of disabled assertion pragma.
+ (Analyze_Pragma, case Assertion_Policy): Rewritten for Ada 2012.
+ (Analyze_Pragma, case Check): Deal with 'Class possibilities.
+ (Analyze_Pragma, case Check_Policy): Deal with 'Class possibilities.
+ (Analyze_Pragma, case Contract_Class): New handling of ignored pragma.
+ (Analyze_Pragma, case Debug): New control with Assertion_Policy.
+ (Analyze_Pragma, case Debug_Policy): Now consistent with
+ Assertion_Policy.
+ (Analyze_Pragma, case Loop_Invariant): New handling of ignored
+ pragma.
+ (Analyze_Pragma, case Loop_Variant): New handling of ignored pragma.
+ (Analyze_Pragma, case Precondition): Use proper name for Check pragma.
+ (Analyze_Pragma, case Check_Enabled): Rewritten for new policy stuff.
+ * sem_prag.ads (Check_Enabled): Rewritten for new
+ Assertion_Policy stuff.
+ (Check_Appicable_Policy): New procedure.
+ * sinfo.adb (Is_Disabled): New flag.
+ (Is_Ignored): New flag.
+ * sinfo.ads (Is_Disabled): New flag.
+ (Is_Ignored): New flag.
+ (N_Pragma_Argument_Association): New 'Class forms.
+ * snames.ads-tmpl: New names Name_uPre, Name_uPost,
+ Name_uType_Invariant, Name_uInvariant.
+ * switch-c.adb: Remove setting of Debug_Pragmas_Enabled for -gnata.
+ * tree_io.ads (ASIS_Version_Number): Updated (remove
+ read write of obsolete flags Debug_Pragmas_Disabled and
+ Debug_Pragmas_Enabled.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_aggr.adb (Get_Explicit_Discriminant_Value): Subsidiary
+ of Build_Record_Aggr_Code, used to retrieve explicit values
+ for inherited discriminants in an extension aggregate, when the
+ ancestor type is unconstrained.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_attr.adb (Check_Stream_Attribute): If restriction
+ No_Default_Stream_Attributes is active, it is illegal to use a
+ predefined elementary type stream attribute either by itself,
+ or more importantly as part of the attribute subprogram for a
+ composite type. However, if the broader restriction No_Streams
+ is active, then stream operations are not generated, and there
+ is no error.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * gnatbind.adb: Minor reformatting.
+
+2013-04-12 Bob Duff <duff@adacore.com>
+
+ * sem_attr.adb (Analyze_Access_Attribute): Treat P'Access like a
+ call only in the static elaboration model.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_prag.adb (Analyze_Input_List): Detect an illegal dependency
+ clause where both input and output lists are null.
+ (Analyze_Pragma): Update the grammar of pragma Depends.
+
+2013-04-12 Vincent Celier <celier@adacore.com>
+
+ * gnatbind.adb (No_Restriction_List): Exclude restrictions that
+ take a parameter value, not a count.
+ * prj.ads, prj.adb (Remove_All_Restricted_Languages): New procedure.
+ * projects.texi: Complete documentation of attribute Roots.
+
+2013-04-12 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch3.adb, exp_util.ads, checks.adb, freeze.adb, sem_attr.adb,
+ sem_ch3.adb: Minor reformatting.
+ * exp_ch4.adb (Size_In_Storage_Elements): Minor documentation
+ improvement: note that the computation is pessimistic for bit
+ packed arrays.
+ * gnat_rm.texi (Range_Length): Fix minor error in description
+ of attribute.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * aspects.adb (Find_Aspect): New routine.
+ (Find_Value_Of_Aspect): New routine.
+ (Has_Aspect): Reimplemented.
+ * aspects.ads (Find_Aspect): New routine.
+ (Find_Value_Of_Aspect): New routine, previously known as Find_Aspect.
+ * exp_ch5.adb (Expand_Iterator_Loop): Update the call to Find_Aspect.
+ * exp_util.adb (Is_Iterated_Container): Update the call to Find_Aspect.
+ * sem_ch4.adb (Try_Container_Indexing): Update calls to Find_Aspect.
+ * sem_ch5.adb (Analyze_Iterator_Specification): Update
+ the call to Find_Aspect. Use function Has_Aspect for better
+ readability.
+ (Preanalyze_Range): Use function Has_Aspect for better readability.
+ * sem_ch13.adb (Check_One_Function): Update the call to Find_Aspect.
+ * sem_prag.adb (Analyze_Pragma): There is no longer need to
+ look at the parent to extract the corresponding pragma for
+ aspect Global.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * checks.adb, sem_elab.adb, repinfo.adb, sem_ch4.adb, restrict.adb,
+ restrict.ads: Minor reformatting.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * lib-xref.adb: Retrieve original name of classwide type if any.
+
+2013-04-12 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch11.ads: Minor reformatting.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * aspects.adb: Alphabetize subprogram bodies in this unit. Add
+ an entry for Aspect_Ghost in the table of canonical aspects.
+ (Has_Aspect): New routine.
+ * aspects.ads: Add Aspect_Ghost to all relevant
+ tables. Alphabetize subprograms in this unit.
+ (Has_Aspect): New routine.
+ * einfo.adb: Add with and use clauses for Aspects.
+ (Is_Ghost_Function): New routine.
+ * einfo.ads: Add new synthesized attribute Is_Ghost_Function and
+ update the structure of the related nodes.
+ (Is_Ghost_Function): New routine.
+ * exp_ch4.adb (Find_Enclosing_Context): Use routine
+ Is_Body_Or_Package_Declaration to terminate a search.
+ (Is_Body_Or_Unit): Removed.
+ * exp_util.adb (Within_Case_Or_If_Expression): Use routine
+ Is_Body_Or_Package_Declaration to terminate a search.
+ * par-prag.adb: Add pragma Ghost to the list of pragmas that do
+ not need special processing by the parser.
+ * sem_attr.adb (Analyze_Access_Attribute): Detect an
+ illegal use of 'Access where the prefix is a ghost function.
+ (Analyze_Attribute): Use routine Is_Body_Or_Package_Declaration
+ to terminate a search. (Check_References_In_Prefix): Use routine
+ Is_Body_Or_Package_Declaration to terminate a search.
+ * sem_ch4.adb (Analyze_Call): Mark a function when it appears
+ inside an assertion expression. Verify the legality of a call
+ to a ghost function.
+ (Check_Ghost_Function_Call): New routine.
+ * sem_ch6.adb (Analyze_Function_Call): Code reformatting. Move
+ the setting of attribute In_Assertion_Expression to Analyze_Call.
+ (Check_Overriding_Indicator): Detect an illegal attempt to
+ override a function with a ghost function.
+ * sem_ch12.adb (Preanalyze_Actuals): Detect an illegal use of
+ a ghost function as a generic actual.
+ * sem_elab.adb (Check_Internal_Call_Continue): Update the call
+ to In_Assertion.
+ * sem_prag.adb: Add an entry for pragma Ghost in the table
+ of significant arguments.
+ (Analyze_Pragma): Do not analyze
+ an "others" case guard. Add processing for pragma Ghost. Use
+ Preanalyze_Assert_Expression when analyzing the expression of
+ pragmas Loop_Invariant and Loop_Variant.
+ * sem_util.adb (Get_Subprogram_Entity): Reimplemented.
+ (Is_Body_Or_Package_Declaration): New routine.
+ * sem_util.ads: Alphabetize subprotrams in this unit.
+ (Is_Body_Or_Package_Declaration): New routine.
+ * sinfo.adb (In_Assertion): Rename to In_Assertion_Expression.
+ (Set_In_Assertion): Rename to Set_In_Assertion_Expression.
+ * sinfo.ads: Rename flag In_Assertion to In_Assertion_Expression
+ to better reflect its use. Update all places that mention the flag.
+ (In_Assertion): Rename to In_Assertion_Expression. Update
+ related pragma Inline. (Set_In_Assertion): Rename to
+ Set_In_Assertion_Expression. Update related pragma Inline.
+ * snames.ads-tmpl: Add new predefined name Ghost. Add new pragma
+ id Pragma_Ghost.
+
+2013-04-12 Arnaud Charlet <charlet@adacore.com>
+
+ * sem_prag.adb (Set_Imported): Do not generate error for multiple
+ Import in CodePeer mode.
+ * s-rident.ads: Fix minor typo.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * checks.adb (Insert_Valid_Check): Do not insert validity check
+ in the body of the generated predicate function, to prevent
+ infinite recursion.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * s-rident.ads: Add various missing Ada 2012 restrictions:
+ No_Access_Parameter_Allocators, No_Coextensions,
+ No_Use_Of_Attribute, No_Use_Of_Pragma.
+ * snames.ads-tmpl: Add corresponding names.
+ * restrict.ads restrict.adb: Subprograms and data structures to
+ handle aspects No_Use_Of_Attribute and No_Use_Of_Pragma.
+ * sem_ch4.adb: Correct name of restrictions is
+ No_Standard_Allocators_After_Elaboration.
+ * sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
+ violation of restriction No_Use_Of_Attribute.
+ * sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
+ Set restrictions No_Use_Of_Pragma and No_Use_Of_Attribute.
+ (Analyze_Pragma): Check violation of restriction No_Use_Of_Pragma.
+ * sem_res.adb: Check restrictions No_Access_Parameter_Allocators
+ and No_Coextensions.
+ * bcheck.adb: Correct name of restrictions is
+ No_Standard_Allocators_After_Elaboration.
+ * gnatbind.adb: Correct name of restrictions is
+ No_Standard_Allocators_After_Elaboration.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma, (Check_Mode_Restriction_In_Function):
+ Correct error message format.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * sem_attr.adb: Minor reformatting.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_elab.adb (Within_Elaborate_All): Do not examine a context
+ item that has not been analyzed, because the unit may have errors,
+ or the context item may come from a proper unit inserted at the
+ point of a stub and not analyzed yet.
+
+2013-04-12 Thomas Quinot <quinot@adacore.com>
+
+ * gnat1drv.adb, repinfo.adb, repinfo.ads (Repinfo.List_Array_Info,
+ List_Record_Info): Also include scalar storage order information in
+ output.
+
+2013-04-12 Yannick Moy <moy@adacore.com>
+
+ * sem_ch6.adb (Process_Contract_Cases): Update code to apply to
+ Contract_Cases instead of Contract_Case pragma.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * a-cfdlli.ads, g-socket.adb, s-fileio.adb: Minor reformatting.
+
+2013-04-12 Yannick Moy <moy@adacore.com>
+
+ * sem_attr.adb (Analyze_Attribute): Update analyse of
+ Attribute_Old and Attribute_Result so they are allowed in the
+ right-hand-side of an association in a Contract_Cases pragma.
+ * sem_prag.adb (Analyze_CTC_In_Decl_Part): Add pre-analysis of
+ the expressions in a Contract_Cases pragma.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * sem.ads, opt.ads: Minor comment edits.
+ * sem_warn.adb, sem_ch6.adb: Minor reformatting.
+
+2013-04-12 Claire Dross <dross@adacore.com>
+
+ * a-cfdlli.adb a-cfdlli.ads (List, Not_No_Element, Iterate,
+ Reverse_Iterate, Query_Element, Update_Element, Read, Write): Removed,
+ not suitable for formal analysis.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb (Analyze_Abstract_State): Use Defining entity
+ to locate package entity, which may be a child unit.
+
+2013-04-12 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.adb, g-socket.ads (Connect_Socket, version with timeout): If
+ the specified timeout is 0, do not attempt to determine whether the
+ connection succeeded.
+
+2013-04-12 Doug Rupp <rupp@adacore.com>
+
+ * s-fileio.adb (Form_RMS Context_Key): Fix some thinkos.
+
+2013-04-12 Doug Rupp <rupp@adacore.com>
+
+ * s-fileio.adb: Minor reformatting.
+
+2013-04-12 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_warn.adb (Check_Infinite_Loop_Warning): Do not warn if
+ the last statement in the analyzed loop is an unconditional
+ exit statement.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * opt.ads (Style_Check_Main): New switch.
+ * sem.adb (Semantics): Set Style_Check flag properly for new
+ unit to be analyzed.
+ * sem_ch10.adb (Analyze_With_Clause): Don't reset Style_Check,
+ the proper setting of this flag is now part of the Semantics
+ procedure.
+ * switch-c.adb (Scan_Front_End_Switches): Set Style_Check_Main
+ for -gnatg and -gnaty
+
+2013-04-12 Doug Rupp <rupp@adacore.com>
+
+ * s-crtl.ads (fopen, freopen): Add vms_form parameter
+ * i-cstrea.ads (fopen, freopen): Likewise.
+ * adaint.h (__gnat_fopen, __gnat_freopen): Likewise.
+ * adaint.c (__gnat_fopen, __gnat_freopen): Likewise.
+ [VMS]: Split out RMS keys and call CRTL function appropriately.
+ * s-fileio.adb (Form_VMS_RMS_Keys, Form_RMS_Context_Key): New
+ subprograms.
+ (Open, Reset): Call Form_VMS_RMS_Keys. Call fopen,freopen with
+ vms_form
+ * gnat_rm.texi: Document implemented RMS keys.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch13.adb (Analyze_Aspect_Specifications):
+ Insert the corresponding pragma for aspect Abstract_State at
+ the top of the visible declarations of the related package.
+ Previously this was only done when the package is a compilation
+ unit.
+
+2013-04-12 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Further menu clean ups.
+ * sem_prag.adb, opt.ads: Minor reformatting.
+ * sem_util.ads: Minor comment fix.
+
+2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Aspect
+ Depends is now a delayed aspect. The delay is required
+ due to the interplay between aspects Depends and Global.
+ (Check_Aspect_At_Freeze_Point): Add an entry for aspect Depends.
+ * sem_prag.adb: Reformat various error messages.
+ (Add_Item): New subsidiary routine.
+ (Analyze_Pragma): Add new variables
+ Global_Seen, Result_Seen, Subp_Inputs and Subp_Outputs. The
+ analysis of pragma Depends now has the capability to check
+ the proper mode and usage of subprogram inputs and outputs.
+ (Appears_In): New routine.
+ (Check_Function_Return): New routine.
+ (Check_Mode): New routine.
+ (Check_Usage): New routine.
+ (Collect_Subprogram_Inputs_Outputs): New routine.
+
+2013-04-12 Bob Duff <duff@adacore.com>
+
+ * par-ch7.adb (P_Package): Initialize Sloc in the newly-pushed scope
+ stack entry.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * switch-c.adb: Minor fix to wording of error message for
+ -gnatet/eT.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * impunit.adb: Add s-multip and s-mudido to list of impl defined
+ system units.
+ * gnat_rm.texi: Add documentation for
+ System.Multiprocessors[.Dispatching_Domains].
+
+2013-04-12 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Completion of menu cleanups.
+
+2013-04-12 Arnaud Charlet <charlet@adacore.com>
+
+ * sem_prag.adb (Diagnose_Multiple_Pragmas): Relax the rules
+ in Relaxed_RM_Semantics.
+
+2013-04-12 Arnaud Charlet <charlet@adacore.com>
+
+ * set_targ.adb (elab code): Add support for non gcc back-ends
+ where save_argv is null.
+
+2013-04-12 Robert Dewar <dewar@adacore.com>
+
+ * gnat1drv.adb (Gnat1drv): Test Target_Dependent_Info_Write_Name.
+ * opt.ads (Target_Dependent_Info_Read): Add _Name, now an access
+ type (Target_Dependent_Info_Write): Add _Name, now an access type.
+ * set_targ.adb (Write_Target_Dependent_Values): Use name
+ from -gnatet switch stored in Target_Dependent_Info_Write_Name
+ (Read_Target_Dependent_Values): Use name from -gnateT switch
+ stored in Target_Dependent_Info_Read_Name.
+ * switch-c.adb: New form of -gnatet and -gnateT switches.
+ * usage.adb: New form of -gnatet and -gnateT switches with
+ file name.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gcc-interface/decl.c (elaborate_expression_1): Skip only constant
+ arithmetics when looking for a read-only variable in the expression.
+
+2013-04-11 Javier Miranda <miranda@adacore.com>
+
+ * check.ads, exp_ch6.adb (Install_Null_Excluding_Check): No check in
+ interface thunks since it is performed at the caller side.
+ (Expand_Simple_Function_Return): No accessibility check needed in thunks
+ since the check is done by the target routine.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma, case Priority): pre-analyze
+ expression with type Any_Priority.
+ * exp_ch9.adb (Initialize_Protection): Check that the value
+ of the priority expression is within the bounds of the proper
+ priority type.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb, prj-env.adb: Minor reformatting.
+
+2013-04-11 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Clean ups.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * set_targ.adb: Minor comment update.
+
+2013-04-11 Pascal Obry <obry@adacore.com>
+
+ * gnat_ugn.texi: Remove obsolete comment about DLL calling
+ convention.
+
+2013-04-11 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch6.adb (Expand_Call): For the call to the target primitive
+ of an interface thunks do not compute the extra actuals; just
+ propagate the extra actuals received by the thunk.
+ * exp_disp.adb (Expand_Interface_Thunk): Decorate new attribute
+ Thunk_Entity.
+ * sem_ch6.adb (Create_Extra_Formals): Do not generate extra
+ formals in interface thunks whose target primitive has no extra
+ formals.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma): Detect
+ a renaming by looking at the Renamed_Object attribute.
+ (Is_Renaming): Removed.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * prj-env.adb (Initialize_Default_Project_Path): Take
+ into account a project path file, specified by environment
+ variable GPR_PROJECT_PATH_FILE, before taking into account
+ GPR_PROJECT_PATH.
+ * projects.texi: Add documentation for GPR_PROJECT_PATH_FILE
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
+ a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
+ a-cfdlli.adb, a-cfdlli.ads, a-cborma.adb, a-cborma.ads, a-cidlli.adb,
+ a-cidlli.ads, a-ciormu.adb, a-ciormu.ads, a-cihase.adb, a-cihase.ads,
+ a-cohama.adb, a-cohama.ads, a-coorse.adb, a-coorse.ads, a-cbhama.adb,
+ a-cbhama.ads, a-cborse.adb, a-cborse.ads, a-ciorma.adb, a-cobove.adb,
+ a-ciorma.ads, a-cobove.ads, a-coormu.adb, a-coormu.ads, a-cohase.adb,
+ a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbhase.adb, a-cbhase.ads:
+ Move Iterator operations from body to private part of spec.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ttypes.ads, get_targ.ads: More minor rewording of comments.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * debug.adb: Document use of switch -gnatd.Z.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma): Both pragma Depends and Global can now
+ support renamings of entire objects. Legal renamings are replaced by
+ the object they rename.
+ (Is_Renaming): New routine.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * set_targ.adb, opt.ads: Minor changes in comments.
+
+2013-04-11 Ben Brosgol <brosgol@adacore.com>
+
+ * gnat_ugn.texi: Minor clean ups.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * nlists.ads, nlists.adb, treepr.adb, treepr.ads: Move debugging
+ function p from Nlists to Treepr.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_disp.adb (Check_Dispatching_Context): If the context is
+ a contract for a null procedure defer error reporting until
+ postcondition body is created.
+ * exp_ch13.adb (Expand_N_Freeze_Entity): If the entity is a
+ null procedure, complete the analysis of its contracts so that
+ calls within classwide conditions are properly rewritten as
+ dispatching calls.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch10.adb, sem_ch12.adb: Minor reformatting.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_attr.adb, sem_res.adb, sem_attr.adb: Minor reformatting.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * atree.adb, atree.ads (Node31): New function.
+ (Set_Node31): New procedure.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * errout.ads: Minor typo correction.
+
+2013-04-11 Javier Miranda <miranda@adacore.com>
+
+ * einfo.ad[sb] (Thunk_Entity/Set_Thunk_Entity): New attribute.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * back_end.adb (Register_Back_End_Types): Moved to Get_Targ
+ * back_end.ads (C_String): Moved to Get_Targ
+ (Register_Type_Proc): Moved to Get_Targ (Register_Back_End_Types):
+ Moved to Get_Targ.
+ * cstand.adb (Register_Float_Type): New interface
+ (Create_Back_End_Float_Types): Use entries in FPT_Mode_Table.
+ * get_targ.adb (Register_Back_End_Types): Moved here from
+ Back_End.
+ * get_targ.ads (C_String): Moved here from Back_End
+ (Register_Type_Proc): Moved here from Back_End
+ (Register_Back_End_Types): here from Back_End.
+ * gnat1drv.adb (GGnat11drv): Add call to
+ Write_Target_Dependent_Values;
+ * lib-writ.ads, lib-writ.adb (Write_ALI): Remove section writing
+ obsolete target dependent info.
+ * opt.ads (Generate_Target_Dependent_Info):
+ Removed (Target_Dependent_Info_Read): New flag
+ (Target_Dependent_Info_Write): New flag
+ * output.adb: Minor comment change
+ * s-os_lib.ads: Minor reformatting
+ * set_targ.ads, set_targ.adb: Minor reformatting.
+ * switch-c.adb (Scan_Switches.First_Ptr): New variable
+ (Scan_Front_End_Switches): Check -gnatd.b, -gnateT come first
+ (Scan_Front_End_Switches): Handle -gnatet, -gnateT
+ * ttypes.ads: Remove documentation section on target dependent
+ info in ali file Remove four letter codes, no longer used Instead
+ of using Get_Targ.Get_xxx, we use Set_Targ.xxx
+ * usage.adb: Add usage lines for -gnatet/-gnateT
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch4.adb: Update documentation.
+ * sinfo.ads (N_Expression_With_Actions): Ditto.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_ch13.adb (Analyze_Aspect_Specifications):
+ Add a guard to prevent the double insertion of the same aspect
+ into a rep item list. This previously led to a circularity.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_attr.adb (Eval_Attribute, case 'Access): Reject attribute
+ reference if the prefix is the dereference of an anonymous access
+ to subprogram type.
+ * exp_attr.adb (Expand_N_Attribute_Reference, Access_Cases): Handle
+ properly a reference to the current instance of a protected type
+ from within a protected subprogram.
+ * sem_res.adb (Find_Unique_Access_Type): Treat
+ Attribute_Access_Type like Allocator_Type when resolving an
+ equality operator.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * xgnatugn.adb: Remove obsolete comments.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * back_end.ads, back_end.adb: Minor reformatting.
+ * set_targ.ads, set_targ.adb: New files.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_case.adb (Check_Against_Predicate): New routine.
+ (Check_Choices): When the type covered by the list of choices
+ is a static subtype with a static predicate, check all choices
+ agains the predicate.
+ (Issue_Msg): All versions removed.
+ (Missing_Choice): New routines.
+ * sem_ch4.adb: Code and comment reformatting.
+ (Analyze_Case_Expression): Do not check the choices when the case
+ expression is being preanalyzed and the type of the expression
+ is a subtype with a static predicate.
+ (Has_Static_Predicate): New routine.
+ * sem_ch13.adb: Code and comment reformatting. (Build_Range):
+ Always build a range even if the low and hi bounds denote the
+ same value. This is needed by the machinery in Check_Choices.
+ (Build_Static_Predicate): Always build a range even if the low and
+ hi bounds denote the same value. This is needed by the machinery
+ in Check_Choices.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * einfo.ads, sem_util.adb, exp_ch6.adb, xgnatugn.adb: Minor
+ reformatting.
+
+2013-04-11 Doug Rupp <rupp@adacore.com>
+
+ * gnatlink.adb: Fold program basename to lower case on VMS for
+ consistency.
+
+2013-04-11 Matthew Heaney <heaney@adacore.com>
+
+ * a-rbtgbo.adb (Generic_Equal): Initialize Result variable before
+ entering loop.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * xgnatugn.adb: Remove dead code (handling of @ifset/@ifclear).
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Remove some use of ifset in menus. Not strictly
+ needed, and seems to confuse some versions of makeinfo.
+
+2013-04-11 Javier Miranda <miranda@adacore.com>
+
+ * einfo.adb (Is_Thunk): Remove assertion.
+ (Set_Is_Thunk): Add assertion.
+ * einfo.ads (Is_Thunk): Complete documentation.
+ * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Code cleanup.
+ * exp_ch3.ad[sb] (Is_Variable_Size_Array): Moved to sem_util
+ (Is_Variable_Size_Record): Moved to sem_util
+ * exp_ch6.adb (Expand_Call): Code cleanup.
+ (Expand_N_Extended_Return_Statement): Code cleanup.
+ (Expand_Simple_Function_Return): Code cleanup.
+ * exp_disp.adb Remove dependency on exp_ch3
+ (Expand_Interface_Thunk): Add minimum decoration needed to set
+ attribute Is_Thunk.
+ * sem_ch3.ad[sb] (Is_Constant_Bound): moved to sem_util
+ * sem_util.ad[sb] (Is_Constant_Bound): Moved from
+ sem_ch3 (Is_Variable_Size_Array): Moved from exp_ch3
+ (Is_Variable_Size_Record): Moved from exp_ch3
+
+2013-04-11 Javier Miranda <miranda@adacore.com>
+
+ * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statements): Do
+ not add cleanup actions in thunks associated with interface types.
+ * exp_ch3.ad[sb] (Is_Variable_Size_Record): Move declaration to
+ the package spec.
+ * exp_ch4.adb (Tagged_Conversion): Update call to
+ Expand_Interface_Conversion since the parameter Is_Static is no
+ longer needed.
+ * exp_ch6.adb (Expand_N_Extended_Return_Statement): Adding
+ assertion to ensure that interface thunks are never handled by
+ this routine.
+ (Expand_N_Simple_Function_Return): Do not rewrite this statement
+ as an extended return statement in interface thunks, and do not
+ perform copy in the secondary stack if the return statement is
+ located in a thunk.
+ * exp_disp.adb (Expand_Dispatching_Call): No longer displace
+ the pointer to the returned object in functions returning interface
+ types.
+ (Expand_Interface_Thunk): For functions returning interface types
+ displace the pointer to the returned object.
+ (Expand_Interface_Conversion): Remove formal
+ Is_Static since this subprogram can now evaluate it locally.
+ * sem_ch3.adb (Add_Internal_Interface_Entities): For functions
+ propagate the type returned by the covered interface primitive to
+ the internal interface entity. Needed by the thunk to generate
+ the code which displaces "this" to reference the corresponding
+ secondary dispatch table.
+ * sem_disp.adb (Propagate_Tag): Update call to
+ Expand_Interface_Conversion since the parameter Is_Static is no
+ longer needed.
+ * sem_res.adb (Resolve_Type_Conversion): Update calls to
+ Expand_Interface_Conversion since the parameter Is_Static is no
+ longer needed plus code cleanup.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * init.c (RETURN_ADDR_OFFSET): Delete as unused.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * a-crbtgk.adb, a-ciorse.adb, a-crbtgo.adb, a-coorse.adb, a-rbtgbo.adb,
+ a-cborse.adb, a-rbtgso.adb, exp_ch3.adb: Minor reformatting.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Selected_Component): Do not expand
+ discriminant check for Unchecked_Union.
+ * sem_res.adb (Resolve_Selected_Component): Set flag
+ Do_Discriminant_Check even when expansion is not performed.
+ * sinfo.ads (Do_Discriminant_Check): Update documentation for the case
+ of Unchecked_Union.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * sem_ch13.adb (Same_Representation): Two types with different scalar
+ storage order never have the same representation.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * xgnatugn.adb (Push_Conditional): Simplify handling,
+ no longer need to keep track of "excluding" sections.
+ (Currently_Excluding): Removed.
+ (Process_Source_File):
+ Set unw/vms flag so that texinfo can do the whole handling of
+ @ifset/@ifclear sections. Fix handling of nested @ifset/@ifclear
+ sections.
+ * gnat_ugn.texi: Add a section on performing unassisted install
+ on Windows.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * debug.adb: Document usage of -gnatd.Q switch.
+
+2013-04-11 Matthew Heaney <heaney@adacore.com>
+
+ * a-crbtgk.adb (Ceiling, Find, Floor): Adjust locks
+ before element comparisons.
+ (Generic_Conditional_Insert, Generic_Conditional_Insert_With_Hint):
+ Ditto.
+ * a-crbtgo.adb, a-rbtgbo.adb (Generic_Equal): Adjust locks before
+ element comparisons.
+ * a-rbtgso.adb (Difference, Intersection): Adjust locks
+ before element comparisons.
+ (Is_Subset, Overlap): Ditto
+ (Symmetric_Difference, Union): Ditto
+ * a-btgbso.adb (Set_Difference, Set_Intersection): Adjust locks
+ before element comparisons.
+ (Set_Subset, Set_Overlap): Ditto
+ (Set_Symmetric_Difference, Set_Union): Ditto
+ * a-coorse.adb, a-ciorse.adb, a-cborse.adb
+ (Update_Element_Preserving_Key): Adjust locks before element
+ comparisons (Replace_Element): Ditto
+
+2013-04-11 Pascal Obry <obry@adacore.com>
+
+ * prj-attr.adb, projects.texi, snames.ads-tmpl: Remove Build_Slaves
+ attribute.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch3.adb (Build_Equivalent_Aggregate): Subsidiary of
+ Expand_N_Object_Declaration, used to construct an aggregate
+ with static components whenever possible, so that objects of a
+ discriminated type can be initialized without calling the init.
+ proc for the type.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * prj-makr.adb (Process_Directory): On VMS, always delete,
+ then recreate the temporary file with Create_Output_Text_File,
+ otherwise the output redirection does not work properly.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * urealp.ads: Fix minor typo.
+
+2013-04-11 Fabien Chouteau <chouteau@adacore.com>
+
+ * cio.c (mktemp): Don't use tmpnam function from the
+ system on VxWorks in kernel mode.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * make.adb (Compile): Clarify the error message reported
+ when gnatmake refuses to compile a runtime source.
+ (Start_Compile_If_Possible): Ditto.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Add documentation about -gnatc and gnatmake.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * switch-c.adb: Document internal switches.
+ * usage.adb: Remove lines for internal switches: -gnatea, -gnateO,
+ -gnatez and -gnateO.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * par-ch6.adb (P_Subprogram): Attach aspects to subprogram stub.
+ * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Allow aspects on
+ subprogram stubs.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Analyze generated
+ pre/post pragmas at once before analyzing the proper body.
+ * sem_prag.adb (Chain_PPC): Handle pragma that comes from an
+ aspect on a subprogram stub.
+ * aspects.adb: Aspect specifications can appear on a
+ subprogram_Body_Stub.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnatname.adb: Minor comment fix.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * prj-makr.adb (Process_Directory): Create a new temporary
+ file for each invocation of the compiler, in directory pointed
+ by environment variable TMPDIR if it exists.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat_ugn.texi: Minor editing/clean ups.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Null_Procedure): New subprogram, mostly
+ extracted from Analyze_Subprogram_Declaration, to handle null
+ procedure declarations that in ada 2012 can be completions of
+ previous declarations.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * sem_prag.adb (Entity_Of): Moved to Exp_Util.
+ * exp_util.ads, exp_util.adb (Entity_Of): New routine.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * g-spipat.ads: Minor comment fix.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb, sem_util.adb, sem_res.adb, exp_ch4.adb: Minor
+ reformatting.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * exp_util.ads (Fully_Qualified_Name_String): Document that the
+ constructed literal is the entity name in all upper case.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * sem_util.adb (Set_Entity_With_Style_Check): Fix logic of
+ check for implementation defined identifiers.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * checks.adb (Apply_Type_Conversion_Checks): Add an explanation
+ of why range check and length are put on different nodes.
+ * exp_ch4.adb (Apply_Type_Conversion_Checks): Remove check marks
+ when doing their expansion.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_util.ads, sem_util.adb (Get_Incomplete_View_Of_Ancestor):
+ New function to implement the notion introduced in RM 7.3.1
+ (5.2/3): in a child unit, a derived type is within the derivation
+ class of an ancestor declared in a parent unit, even if there
+ is an intermediate derivation that does not see the full view
+ of that ancestor.
+ * sem_res.adb (Valid_Conversion): if all else fails, examine if an
+ incomplete view of an ancestor makes a numeric conversion legal.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb: in Ada2012 operators can only have in
+ parameters.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * makeutl.adb (Create_Binder_Mapping_File): Do not put into
+ the mapping file ALI files of sources that have been replaced.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * projects.texi: Add subsection Duplicate Sources in Projects.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Add documentation for gnatmake switch -droot_dir/**
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * init.c (__gnat_install_handler): Only set up an alternate
+ stack when installing a signal handler for SIGSEGV.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * g-socket.adb (Connect_Socket, timeout version): Call
+ underlying connect operation directly, not through the 2-argument
+ Connect_Socket thick binding, in order to avoid raising a junk
+ exception for the EINPROGRESS return.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * a-cdlili.adb: Minor addition of pragma Warnings (Off).
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * hostparm.ads: Minor reformatting.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * aspects.ads, aspects.adb: Add Aspect_Depends to all the relevant
+ tables.
+ * elists.ads, elists.adb (Contains): New routine.
+ * par-prag.adb: Pragma Depends does not need any special treatment
+ by the parser.
+ * sem_ch13.adb (Analyze_Aspect_Specifications):
+ Transform aspect Depends into a corresponding pragma.
+ (Check_Aspect_At_Freeze_Point): Aspect Depends does not need
+ inspection at its freeze point.
+ * sem_prag.adb (Analyze_Pragma): Perform analysis and
+ normalization of pragma Depends. Remove the use of function
+ Is_Duplicate_Item. Use End_Scope to uninstalle the formal
+ parameters of a subprogram. Add a value for pragma Depends in
+ table Sig_Flags.
+ (Is_Duplicate_Item): Removed.
+ * snames.ads-tmpl: Add predefined name for Depends as well as
+ a pragma identifier.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * gnat1drv.adb: Minor code clean up.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * debug.adb, sem_ch13.adb (Analyze_Enumeration_Representation_Clause):
+ Ignore enumeration rep clauses by default in CodePeer mode, unless
+ -gnatd.I is specified.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_util.adb (Safe_To_Capture_Value): If the node belongs to
+ an expression that has been attached to the else_actions of an
+ if-expression, the capture is not safe.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * checks.adb (Apply_Type_Conversion_Checks): Put check mark on type
+ conversion for arrays.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * adabkend.adb: Minor comment addition.
+
+2013-04-11 Matthew Heaney <heaney@adacore.com>
+
+ * a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb ("="): Increment
+ lock counts before entering loop.
+ (Find): Ditto.
+ (Is_Sorted, Merge, Sort): Ditto.
+ (Reverse_Find): Ditto.
+ (Splice_Internal): Internal operation to refactor splicing logic.
+ (Splice): Some logic moved into Splice_Internal.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * adabkend.adb (Scan_Compiler_Arguments): Do not call
+ Set_Output_Object_File_Name in Alfa_Mode
+ * gnat1drv.adb (Adjust_Global_Switches): Take Alfa_Mode into account.
+ * opt.ads: Fix documentation.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_res.adb: Minor code reorganization and comment fixes.
+ * sem_type.adb: Minor reformatting.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch4.adb (Process_Transient_Object): Add new
+ local variable Fin_Call. Remove and explain ??? comment. Use the
+ Actions of logical operators "and then" and "or else" to insert
+ the generated finalization call.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat_rm.texi: Fix typo.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_res.adb: Minor reformatting.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * atree.h: Add declarations for Flag255-Flag289 Fix declaration
+ of Field30 (was wrong, but no effect, since not yet referenced by
+ back end) Add declarations for Field31-Field35 Add declarations
+ for Node31-Node35.
+ * einfo.ads, einfo.adb (Has_Invariants): No longer applies to
+ procedures.
+ (Has_Predicates): No longer applies to functions.
+ (Is_Predicate_Function): New flag.
+ (Is_Predicate_Function_M): New flag.
+ (Is_Invariant_Procedure): New flag.
+ (Predicate_Function_M): New function.
+ (Set_Predicate_Function_M): New procedure.
+ * exp_ch11.adb (Expand_N_Raise_Expression): Take care of special
+ case of appearing in predicate used for membership test.
+ * exp_ch3.adb (Insert_Component_Invariant_Checks): Set
+ Is_Invariant_Procedure flag.
+ * exp_ch4.adb (Expand_Op_In): Call special predicate function
+ that takes care of raise_expression nodes in the predicate.
+ * exp_util.ads, exp_util.adb (Make_Predicate_Call): Add argument Mem for
+ membership case.
+ * sem_ch13.adb (Build_Predicate_Functions): New name for
+ Build_Predicate_Function. Major rewrite to take care of raise
+ expression in predicate for membership tests.
+ * sem_res.adb (Resolve_Actuals): Include both predicate functions
+ in defense against infinite predicate function loops.
+ * sinfo.ads, sinfo.adb (Convert_To_Return_False): New flag.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb: Minor reformatting.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * lib-xref.adb: Generate reference for component of anonymous
+ access type.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * stand.ads: Minor reformatting.
+
+2013-04-11 Matthew Heaney <heaney@adacore.com>
+
+ * a-convec.adb, a-coinve.adb, a-cobove.adb ("="): Increment lock
+ counts before entering loop.
+ (Find, Find_Index): Ditto.
+ (Is_Sorted, Merge, Sort): Ditto.
+ (Reverse_Find, Reverse_Find_Index): Ditto.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch11.ads, exp_ch11.adb (Expand_N_Raise_Expression): New procedure.
+ * exp_util.adb (Insert_Actions): Add entry for N_Raise_Expression.
+ * expander.adb: Add call to Expand_N_Raise_Expression.
+ * par-ch11.adb (P_Raise_Expression): New procedure.
+ * par-ch4.adb (P_Relation): Handle Raise_Expression.
+ * par.adb (P_Raise_Expression): New procedure.
+ * sem.adb: Add handling for N_Raise_Expression.
+ * sem_ch11.ads, sem_ch11.adb (Analyze_Raise_Expression): New procedure.
+ * sem_res.adb (Resolve): Add handling for N_Raise_Expression.
+ * sinfo.ads, sinfo.adb (N_Raise_Expression): New node.
+ * sprint.adb (Sprint_Node_Actual): Add handling for N_Raise_Expression.
+ * stand.ads (Any_Type): Document use with N_Raise_Expression.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Remove section "The Development Environments"
+ now that all predefined attributes are documented, including
+ those in package IDE.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb: Preserve parent link in copy of expression.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * projects.texi: Complete rewrite of the subsection Attributes
+ in section "Project file Reference".
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb: Minor reformatting.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenate): Remove wrapping in
+ expression-with-actions node. No longer needed given fix to
+ sem_prag and caused loss of some useful warnings.
+ * sem.ads: Minor reformatting.
+ * sem_prag.adb (Check_Disabled): Removed, to be replaced by not
+ Check_Enabled. These two routines were curiously incompatible
+ causing confusion.
+ (Analyze_Pragma, case Check): Make sure we do
+ not expand the string argument if the check is disabled. Avoid
+ use of Check_Disabled, which resulted in missing analysis in
+ some cases.
+ * sem_prag.ads (Check_Disabled): Removed, to be replaced by not
+ Check_Enabled. These two routines were curiously incompatible
+ causing confusion.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch4.adb (Process_Transient_Object): Use
+ an unchecked conversion when associating a transient controlled
+ object with its "hook".
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_prag.adb (Analyze_Pragma, case
+ Preelaborable_Initialization): The pragma is legal if it comes
+ from an aspect on the private view of the type, even though its
+ analysis point takes place later at the freeze point.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_ch6.adb: Minor reformatting.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * ali-util.adb (Read_Withed_ALIs): Do not consider it an error to
+ read ALI files with No_Object=True in Alfa mode.
+ * gnat1drv.adb: Set appropriately Back_End_Mode in Alfa mode, whether
+ this is during frame condition generation of translation to Why.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb: Minor code reorganization
+ * types.ads: Minor reformatting.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * opt.ads New global boolean Frame_Condition_Mode to avoid
+ referring to command line switch.
+ * gnat1drv.adb (Gnat1drv) set frame condition mode when -gnatd.G
+ is present, and disable Code generation in that case. Disable
+ ALI file generation when switch is *not* present.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Analyze_Expression_Function): Perform the
+ pre-analysis on a copy of the expression, to prevent downstream
+ visbility issues involving operators and instantiations.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * debug.adb: Reservation and documentation for -gnatd.G switch.
+ * gnat1drv.adb (Adjust_Global_Switches) Take into account -gnatd.G
+ switch, and set ALI file generation accordingly.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb, exp_dist.adb: Minor reformatting.
+ * gnat_rm.texi, gnat_ugn.texi: -020 Add documentation clarifying that
+ check names introduced with pragma Check_Name are suppressed by -gnatp.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi, projects.texi: Move chapter "Tools Supporting Project
+ Files" from projects.texi to gnat_ugn.texi.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * gcc-interface/Make-lang.in: Update dependencies.
+
+2013-04-11 Yannick Moy <moy@adacore.com>
+
+ * gnat1drv.adb (Adjust_Global_Switches): Allow missing body in Alfa
+ mode.
+
+2013-04-11 Hristian Kirtchev <kirtchev@adacore.com>
+
+ * exp_ch4.adb (Expand_N_Allocator): Detect the
+ allocation of an anonymous controlled object where the type of
+ the context is named. Use the pool and finalization master of
+ the named access type to allocate the object.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Remove most mentions of gprbuild.
+ * projects.texi: Remove all mentions of asociative array
+ attributes.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * sem_prag.adb, sem_attr.adb, gnat1drv.adb, prj-makr.adb,
+ opt.ads, sem_ch13.adb: Minor reformatting.
+ * debug.adb: Minor comment fix (remove junk .I doc).
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * rtsfind.ads, exp_dist.adb, exp_dist.ads (Rtsfind.PCS_Version, case
+ PolyORB): Bump to 6.
+ (Exp_Dist.PolyORB_Support): Replace TC_Build with
+ Build_Complex_TC.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * debug.adb, sem_prag.adb, par-ch2.adb, sem_attr.adb, gnat1drv.adb,
+ exp_disp.adb, opt.ads, sem_ch13.adb (Relaxed_RM_Semantics): New flag.
+ Enable this flag in CodePeer mode, and also via -gnatd.M.
+ Replace some uses of CodePeer_Mode by Relaxed_RM_Semantics.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch8.adb (Check_Constrained_Object): If a subtype is created
+ from the renamed object in an object renaming declaration with
+ an unconstrained nominal subtype, freeze the created subtype at
+ once, to prevent order of elaboration issues in the backend.
+
+2013-04-11 Arnaud Charlet <charlet@adacore.com>
+
+ * exp_aggr.adb (Aggr_Size_OK): Refine setting of Max_Aggr_Size
+ in particular in CodePeer mode.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Add documentation for backup copies of project
+ files for gnatname.
+
+2013-04-11 Tristan Gingold <gingold@adacore.com>
+
+ * gnat_rm.texi: Add Detect_BLocking in the ravenscar profile
+ pragma list.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnatname.adb (Scan_Args): Recognize new switch --no-backup
+ (Usage): Add line for --no-backup.
+ * opt.ads (No_Backup): New Boolean variable, initialized to False.
+ (Ada_Version_Default): Switch to Ada 2012 by default.
+ * prj-makr.adb (Initialize): Create a backup for an existing
+ project file if gnatname is not invoked with --no-backup.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch4.adb: Minor code improvement: replace various calls to
+ Make_If_Statement in expansion with Make_Implicit_If_Statement.
+
+2013-04-11 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ali.adb: Fix minor typo.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch4.adb (Find_Enclosing_Context): Add missing case of
+ N_Procedure_Call_Statement.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * debug.adb: Minor comment fix.
+
+2013-04-11 Johannes Kanig <kanig@adacore.com>
+
+ * debug.adb: Remove comment for -gnatd.G.
+
+2013-04-11 Thomas Quinot <quinot@adacore.com>
+
+ * exp_ch4.adb (Expand_Record_Equality.Suitable_Element):
+ Remove recursive routine, replace with...
+ (Expand_Record_Equality.Element_To_Compare): New subroutine,
+ implement iterative search for next element to compare.
+ Add explanatory comment in the tagged case.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch5.adb: remove spurious warning from non-empty loop.
+ * sem_ch8.adb (Enclosing_Instance): Make public to other routines
+ in the package, in order to suppress redundant semantic checks
+ on subprogram renamings in nested instantiations.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * errout.ads: Minor reformatting.
+ * sem_eval.adb (Why_Not_Static): Now issues continuation messages
+ (Why_Not_Static): Test for aggregates behind string literals.
+ * sem_eval.ads (Why_Not_Static): Now issues continuation messages.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_ch4.adb (Expand_Concatenation): Wrap expansion in
+ Expressions_With_Actions.
+
+2013-04-11 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch6.adb (Base_Types_Match): For an actual type in an
+ instance, the base type may itself be a subtype, so find true
+ base type to determine compatibility.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * s-osprim-mingw.adb, sem_ch3.adb, sem_prag.adb, sem_util.adb.
+ makeutl.adb, sem_ch8.adb: Minor reformatting.
+
+2013-04-11 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Minor fixes for VMS.
+ * ug_words: Minor addition: -gnato? => /OVERFLOW_CHECKS=?.
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * usage.adb (Usage): Minor edit to -gnatW message
+
+2013-04-11 Robert Dewar <dewar@adacore.com>
+
+ * exp_aggr.adb (Expand_N_Aggregate): Add circuit for handling
+ others for string literal case. Also add big ??? comment about
+ this new code, which should be redundant, but is not.
+ * sem_eval.adb (Eval_Concatenation): Handle non-static case
+ properly (Eval_String_Literal): Handle non-static literal properly
+
2013-03-20 Tobias Burnus <burnus@net-b.de>
* i-fortra.ads: Update comment, add Ada 2012's optional