mirror of git://gcc.gnu.org/git/gcc.git
[multiple changes]
2011-08-29 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_util.adb, gnat1drv.adb, s-parint.ads: Minor reformatting. 2011-08-29 Matthew Heaney <heaney@adacore.com> * a-cbhama.ads, a-cbhase.ads (Cursor): Default-initialize all components of record type. 2011-08-29 Bob Duff <duff@adacore.com> * s-tassta.adb (Task_Wrapper): Handle and ignore exceptions propagated by the termination handler. From-SVN: r178241
This commit is contained in:
parent
9fd9d2beb0
commit
c54796e0c4
|
|
@ -1,3 +1,18 @@
|
|||
2011-08-29 Robert Dewar <dewar@adacore.com>
|
||||
|
||||
* sem_ch3.adb, sem_util.adb, gnat1drv.adb, s-parint.ads: Minor
|
||||
reformatting.
|
||||
|
||||
2011-08-29 Matthew Heaney <heaney@adacore.com>
|
||||
|
||||
* a-cbhama.ads, a-cbhase.ads (Cursor): Default-initialize all
|
||||
components of record type.
|
||||
|
||||
2011-08-29 Bob Duff <duff@adacore.com>
|
||||
|
||||
* s-tassta.adb (Task_Wrapper): Handle and ignore exceptions propagated
|
||||
by the termination handler.
|
||||
|
||||
2011-08-29 Yannick Moy <moy@adacore.com>
|
||||
|
||||
* sem_ch3.adb (Array_Type_Declaration): Create declarations for Itypes
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
-- --
|
||||
-- S p e c --
|
||||
-- --
|
||||
-- Copyright (C) 2004-2010, Free Software Foundation, Inc. --
|
||||
-- Copyright (C) 2004-2011, Free Software Foundation, Inc. --
|
||||
-- --
|
||||
-- This specification is derived from the Ada Reference Manual for use with --
|
||||
-- GNAT. The copyright notice above, and the license provisions that follow --
|
||||
|
|
@ -320,7 +320,7 @@ private
|
|||
|
||||
type Cursor is record
|
||||
Container : Map_Access;
|
||||
Node : Count_Type;
|
||||
Node : Count_Type := 0;
|
||||
end record;
|
||||
|
||||
procedure Read
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
-- --
|
||||
-- S p e c --
|
||||
-- --
|
||||
-- Copyright (C) 2004-2010, Free Software Foundation, Inc. --
|
||||
-- Copyright (C) 2004-2011, Free Software Foundation, Inc. --
|
||||
-- --
|
||||
-- This specification is derived from the Ada Reference Manual for use with --
|
||||
-- GNAT. The copyright notice above, and the license provisions that follow --
|
||||
|
|
@ -431,7 +431,7 @@ private
|
|||
|
||||
type Cursor is record
|
||||
Container : Set_Access;
|
||||
Node : Count_Type;
|
||||
Node : Count_Type := 0;
|
||||
end record;
|
||||
|
||||
procedure Write
|
||||
|
|
|
|||
|
|
@ -479,7 +479,7 @@ procedure Gnat1drv is
|
|||
-- We would prefer to suppress the expansion of tagged types and
|
||||
-- dispatching calls, so that one day GNATprove can handle them
|
||||
-- directly. Unfortunately, this is causing problems in some cases,
|
||||
-- so keep this expansion for the time being.
|
||||
-- so keep this expansion for the time being. To be investigated ???
|
||||
|
||||
Tagged_Type_Expansion := True;
|
||||
end if;
|
||||
|
|
|
|||
|
|
@ -38,7 +38,6 @@ with Interfaces;
|
|||
with System.RPC;
|
||||
|
||||
package System.Partition_Interface is
|
||||
|
||||
pragma Elaborate_Body;
|
||||
|
||||
type DSA_Implementation_Name is (No_DSA, GARLIC_DSA, PolyORB_DSA);
|
||||
|
|
@ -46,13 +45,14 @@ package System.Partition_Interface is
|
|||
-- Identification of this DSA implementation variant
|
||||
|
||||
PCS_Version : constant := 1;
|
||||
-- Version of the PCS API (for Exp_Dist consistency check).
|
||||
-- Version of the PCS API (for Exp_Dist consistency check)
|
||||
--
|
||||
-- This version number is matched against corresponding element of
|
||||
-- Exp_Dist.PCS_Version_Number to ensure that the versions of Exp_Dist and
|
||||
-- the PCS are consistent.
|
||||
-- Exp_Dist.PCS_Version_Number to ensure that the versions of Exp_Dist
|
||||
-- and the PCS are consistent.
|
||||
|
||||
-- RCI receiving stubs contain a table of descriptors for
|
||||
-- all user subprograms exported by the unit.
|
||||
-- RCI receiving stubs contain a table of descriptors for all user
|
||||
-- subprograms exported by the unit.
|
||||
|
||||
type Subprogram_Id is new Natural;
|
||||
First_RCI_Subprogram_Id : constant := 2;
|
||||
|
|
|
|||
|
|
@ -1324,7 +1324,14 @@ package body System.Tasking.Stages is
|
|||
-- Execute the task termination handler if we found it
|
||||
|
||||
if TH /= null then
|
||||
TH.all (Cause, Self_ID, EO);
|
||||
begin
|
||||
TH.all (Cause, Self_ID, EO);
|
||||
|
||||
exception
|
||||
when others =>
|
||||
-- RM-C.7.3 requires these exceptions to be ignored
|
||||
null;
|
||||
end;
|
||||
end if;
|
||||
|
||||
if System.Stack_Usage.Is_Enabled then
|
||||
|
|
|
|||
|
|
@ -4791,28 +4791,22 @@ package body Sem_Ch3 is
|
|||
-- Process subtype indication if one is present
|
||||
|
||||
if Present (Component_Typ) then
|
||||
|
||||
Element_Type := Process_Subtype (Component_Typ, P, Related_Id, 'C');
|
||||
|
||||
-- In formal verification mode, create an explicit declaration for
|
||||
-- the Itype created for a component type. Having a declaration for
|
||||
-- all type entities facilitates the task of the formal verification
|
||||
-- back-end. Notice that this declaration is not attached to the
|
||||
-- tree.
|
||||
-- back-end. Note: this declaration is not attached to the tree.
|
||||
|
||||
if ALFA_Mode
|
||||
and then Is_Itype (Element_Type)
|
||||
then
|
||||
if ALFA_Mode and then Is_Itype (Element_Type) then
|
||||
declare
|
||||
Loc : constant Source_Ptr := Sloc (Def);
|
||||
Decl : Entity_Id;
|
||||
|
||||
begin
|
||||
Decl :=
|
||||
Make_Subtype_Declaration (Loc,
|
||||
Defining_Identifier => Element_Type,
|
||||
Subtype_Indication => Relocate_Node (Component_Typ));
|
||||
|
||||
Analyze (Decl);
|
||||
end;
|
||||
end if;
|
||||
|
|
@ -4906,23 +4900,20 @@ package body Sem_Ch3 is
|
|||
-- In ALFA mode, generate a declaration for Itype T, so that the
|
||||
-- formal verification back-end can use it.
|
||||
|
||||
if ALFA_Mode
|
||||
and then Is_Itype (T)
|
||||
then
|
||||
if ALFA_Mode and then Is_Itype (T) then
|
||||
declare
|
||||
Loc : constant Source_Ptr := Sloc (Def);
|
||||
Decl : Node_Id;
|
||||
|
||||
begin
|
||||
Decl := Make_Full_Type_Declaration (Loc,
|
||||
Defining_Identifier => T,
|
||||
Type_Definition =>
|
||||
Make_Constrained_Array_Definition (Loc,
|
||||
Discrete_Subtype_Definitions =>
|
||||
New_Copy_List (Discrete_Subtype_Definitions (Def)),
|
||||
Component_Definition =>
|
||||
Relocate_Node (Component_Definition (Def))));
|
||||
|
||||
Decl :=
|
||||
Make_Full_Type_Declaration (Loc,
|
||||
Defining_Identifier => T,
|
||||
Type_Definition =>
|
||||
Make_Constrained_Array_Definition (Loc,
|
||||
Discrete_Subtype_Definitions =>
|
||||
New_Copy_List (Discrete_Subtype_Definitions (Def)),
|
||||
Component_Definition =>
|
||||
Relocate_Node (Component_Definition (Def))));
|
||||
Analyze (Decl);
|
||||
end;
|
||||
end if;
|
||||
|
|
|
|||
|
|
@ -8515,9 +8515,8 @@ package body Sem_Util is
|
|||
begin
|
||||
pragma Assert (Is_Itype (Id));
|
||||
return Present (Parent (Id))
|
||||
and then Nkind_In (Parent (Id),
|
||||
N_Full_Type_Declaration,
|
||||
N_Subtype_Declaration)
|
||||
and then Nkind_In (Parent (Id), N_Full_Type_Declaration,
|
||||
N_Subtype_Declaration)
|
||||
and then Defining_Entity (Parent (Id)) = Id;
|
||||
end Itype_Has_Declaration;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue