From dacc3457d6960a86f27178af18a161e47c48ec41 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Fri, 20 Feb 2015 10:42:04 +0100 Subject: [PATCH] [multiple changes] 2015-02-20 Robert Dewar * einfo.ads: Minor comment updates Fix missing pragma Inline for Set_Partial_View_Has_Unknown_Discr. * einfo.adb (Write_Entity_Flags): Add missing entry for Partial_View_Has_Unknown_Discr. * sem_ch3.adb: Minor reformatting. 2015-02-20 Vincent Celier * opt.ads: Minor cleanup: remove mention of gprmake. * s-stalib.ads (Abort_Undefer_Direct): Do not inline. * s-tataat.adb: Do not call System.Tasking.Self but directly System.Task_Primitives.Operations.Self. From-SVN: r220839 --- gcc/ada/ChangeLog | 21 +++++++++++++++++++++ gcc/ada/einfo.adb | 1 + gcc/ada/einfo.ads | 4 ++-- gcc/ada/opt.ads | 34 +++++++++++++++++----------------- gcc/ada/s-stalib.ads | 5 +++-- gcc/ada/s-tataat.adb | 10 +++++++--- gcc/ada/sem_ch3.adb | 2 +- 7 files changed, 52 insertions(+), 25 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index bcc6d85..bad2730 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,26 @@ 2015-02-20 Robert Dewar + * einfo.ads: Minor comment updates Fix missing pragma Inline + for Set_Partial_View_Has_Unknown_Discr. + * einfo.adb (Write_Entity_Flags): Add missing entry for + Partial_View_Has_Unknown_Discr. + * sem_ch3.adb: Minor reformatting. + +2015-02-20 Vincent Celier + + * opt.ads: Minor cleanup: remove mention of gprmake. + * s-stalib.ads (Abort_Undefer_Direct): Do not inline. + * s-tataat.adb: Do not call System.Tasking.Self but directly + System.Task_Primitives.Operations.Self. + +2015-02-20 Arnaud Charlet + + * gnat_rm.texi, gnat_ugn.texi: Now automatically generated from + sphinx in the doc directory. + * doc: New directory containing sphinx versions of gnat_rm and gnat_ugn + +2015-02-20 Robert Dewar + * sem_res.adb: Minor reformatting. * exp_ch9.adb (Build_Protected_Spec): Copy Aliased setting when building spec. diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb index 35c8c9f..dba0e75 100644 --- a/gcc/ada/einfo.adb +++ b/gcc/ada/einfo.adb @@ -8669,6 +8669,7 @@ package body Einfo is W ("Optimize_Alignment_Space", Flag241 (Id)); W ("Optimize_Alignment_Time", Flag242 (Id)); W ("Overlays_Constant", Flag243 (Id)); + W ("Partial_View_Has_Unknown_Discr", Flag280 (Id)); W ("Reachable", Flag49 (Id)); W ("Referenced", Flag156 (Id)); W ("Referenced_As_LHS", Flag36 (Id)); diff --git a/gcc/ada/einfo.ads b/gcc/ada/einfo.ads index 85a7931..b11a9a6 100644 --- a/gcc/ada/einfo.ads +++ b/gcc/ada/einfo.ads @@ -3579,7 +3579,7 @@ package Einfo is -- subject to indicator Part_Of (both aspect and option variants). -- Partial_View_Has_Unknown_Discr (Flag280) --- Present on types entities. Indicates that the partial view of a type +-- Present in all types. Set to Indicate that the partial view of a type -- has unknown discriminants. A default initialization of an object of -- the type does not require an invariant check (AI12-0133). @@ -8778,7 +8778,7 @@ package Einfo is pragma Inline (Set_Packed_Array_Impl_Type); pragma Inline (Set_Parent_Subtype); pragma Inline (Set_Part_Of_Constituents); - pragma Inline (Partial_View_Has_Unknown_Discr); + pragma Inline (Set_Partial_View_Has_Unknown_Discr); pragma Inline (Set_Pending_Access_Types); pragma Inline (Set_Postcondition_Proc); pragma Inline (Set_Prival); diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads index ceaefd9..026878e 100644 --- a/gcc/ada/opt.ads +++ b/gcc/ada/opt.ads @@ -32,7 +32,7 @@ -- This package contains global flags set by the initialization routine from -- the command line and referenced throughout the compiler, the binder, or -- other GNAT tools. The comments indicate which options are used by which --- programs (GNAT, GNATBIND, GNATLINK, GNATMAKE, GPRMAKE, etc). +-- programs (GNAT, GNATBIND, GNATLINK, GNATMAKE, etc). -- Some flags are labelled "PROJECT MANAGER". These are used by tools that -- use the Project Manager. These tools include gnatmake, gnatname, the gnat @@ -268,7 +268,7 @@ package Opt is -- a library. May be set to True by Gnatbind.Scan_Bind_Arg. Bind_Only : Boolean := False; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- Set to True to skip compile and link steps -- (except when Compile_Only and/or Link_Only are True). @@ -334,7 +334,7 @@ package Opt is -- directly modified by gnatmake, to affect the shared binder routines. Check_Switches : Boolean := False; - -- GNATMAKE, GPRMAKE, GPBUILD + -- GNATMAKE, GPBUILD -- Set to True to check compiler options during the make process Check_Unreferenced : Boolean := False; @@ -378,8 +378,8 @@ package Opt is -- Compilation date and time in form YYYY-MM-DD HH:MM:SS Compile_Only : Boolean := False; - -- GNATMAKE, GNATCLEAN, GPRMAKE, GPBUILD, GPRCLEAN - -- GNATMAKE, GPRMAKE, GPRMAKE: + -- GNATMAKE, GNATCLEAN, GPBUILD, GPRCLEAN + -- GNATMAKE, GPRBUILD: -- set True to skip bind and link steps (except when Bind_Only is True) -- GNATCLEAN, GPRCLEAN: -- set True to delete only the files produced by the compiler but not the @@ -415,7 +415,7 @@ package Opt is -- use of -gnatwc/C. Create_Mapping_File : Boolean := False; - -- GNATMAKE, GPRMAKE + -- GNATMAKE -- Set to True (-C switch) to indicate that the compiler will be invoked -- with a mapping file (-gnatem compiler switch). @@ -474,7 +474,7 @@ package Opt is -- Set to False with switch -f of gnatclean and gprclean Display_Compilation_Progress : Boolean := False; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- Set True (-d switch) to display information on progress while compiling -- files. Internal flag to be used in conjunction with an IDE (e.g GPS). @@ -668,7 +668,7 @@ package Opt is -- (-F switch set). Force_Compilations : Boolean := False; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- Set to force recompilations even when the objects are up-to-date. Front_End_Inlining : Boolean := False; @@ -864,7 +864,7 @@ package Opt is -- if not. Keep_Going : Boolean := False; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- When True signals to ignore compilation errors and keep processing -- sources until there is no more work. @@ -879,7 +879,7 @@ package Opt is -- children. Link_Only : Boolean := False; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- Set to True to skip compile and bind steps (except when Bind_Only is -- set to True). @@ -1028,7 +1028,7 @@ package Opt is -- specially concocted test cases. Can be modified by -gnateinn switch. Maximum_Processes : Positive := 1; - -- GNATMAKE, GPRMAKE, GPRBUILD + -- GNATMAKE, GPRBUILD -- Maximum number of processes that should be spawned to carry out -- compilations. @@ -1163,10 +1163,10 @@ package Opt is -- for definitions of "optimize_size" for dotnet/jgnat and GNAAMP backends Output_File_Name_Present : Boolean := False; - -- GNATBIND, GNAT, GNATMAKE, GPRMAKE + -- GNATBIND, GNAT, GNATMAKE -- Set to True when the output C file name is given with option -o for -- GNATBIND, when the object file name is given with option -gnatO for GNAT - -- or when the executable is given with option -o for GNATMAKE or GPRMAKE. + -- or when the executable is given with option -o for GNATMAKE. Output_Linker_Option_List : Boolean := False; -- GNATBIND @@ -1255,7 +1255,7 @@ package Opt is -- policy is set in package System. Quiet_Output : Boolean := False; - -- GNATMAKE, GNATCLEAN, GPRMAKE, GPRBUILD, GPRCLEAN + -- GNATMAKE, GNATCLEAN, GPRBUILD, GPRCLEAN -- Set to True if the tool should not have any output if there are no -- errors or warnings. @@ -1581,15 +1581,15 @@ package Opt is Verbose_Mode : Boolean := False; -- GNAT, GNATBIND, GNATMAKE, GNATLINK, GNATLS, GNATNAME, GNATCLEAN, - -- GPRMAKE, GPRBUILD, GPRCLEAN + -- GPRBUILD, GPRCLEAN -- Set to True to get verbose mode (full error message text and location -- information sent to standard output, also header, copyright and summary) type Verbosity_Level_Type is (None, Low, Medium, High); pragma Ordered (Verbosity_Level_Type); Verbosity_Level : Verbosity_Level_Type := High; - -- GNATMAKE, GPRMAKE - -- Modified by gnatmake or gprmake switches -v, -vl, -vm, -vh. Indicates + -- GNATMAKE + -- Modified by gnatmake switches -v, -vl, -vm, -vh. Indicates -- the level of verbosity of informational messages: -- -- In Low Verbosity, the reasons why a source is recompiled, the name diff --git a/gcc/ada/s-stalib.ads b/gcc/ada/s-stalib.ads index c7f28fe..e3e8e10 100644 --- a/gcc/ada/s-stalib.ads +++ b/gcc/ada/s-stalib.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2015, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -239,9 +239,10 @@ package System.Standard_Library is ----------------- procedure Abort_Undefer_Direct; - pragma Inline (Abort_Undefer_Direct); -- A little procedure that just calls Abort_Undefer.all, for use in -- clean up procedures, which only permit a simple subprogram name. + -- ??? This procedure is not marked inline because the front-end + -- cannot currently mark its calls from at-end handers as inlined. procedure Adafinal; -- Performs the Ada Runtime finalization the first time it is invoked. diff --git a/gcc/ada/s-tataat.adb b/gcc/ada/s-tataat.adb index 3f002fa..0ebf3d1 100644 --- a/gcc/ada/s-tataat.adb +++ b/gcc/ada/s-tataat.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2014, Free Software Foundation, Inc. -- +-- Copyright (C) 2014-2015, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,9 +31,12 @@ with System.Parameters; use System.Parameters; with System.Tasking.Initialization; use System.Tasking.Initialization; +with System.Task_Primitives.Operations; package body System.Tasking.Task_Attributes is + package STPO renames System.Task_Primitives.Operations; + type Index_Info is record Used : Boolean; -- Used is True if a given index is used by an instantiation of @@ -51,7 +54,8 @@ package body System.Tasking.Task_Attributes is -- System.Address type and Initial_Value is 0 (or null for an access type). function Next_Index (Require_Finalization : Boolean) return Integer is - Self_Id : constant Task_Id := Self; + Self_Id : constant Task_Id := STPO.Self; + begin Task_Lock (Self_Id); @@ -73,7 +77,7 @@ package body System.Tasking.Task_Attributes is -------------- procedure Finalize (Index : Integer) is - Self_Id : constant Task_Id := Self; + Self_Id : constant Task_Id := STPO.Self; begin pragma Assert (Index in Index_Array'Range); Task_Lock (Self_Id); diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index a017734..c651148 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -16459,7 +16459,7 @@ package body Sem_Ch3 is Set_Has_Private_Declaration (Prev); Set_Has_Private_Declaration (Id); - -- AI12-0133 : indicate whether we have a partial view with + -- AI12-0133: Indicate whether we have a partial view with -- unknown discriminants, in which case initialization of objects -- of the type do not receive an invariant check. -- 2.7.4