X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fada%2Fexp_ch9.ads;h=88d0e05b55c8ed0bf8f467d35ead3f88ac36a6de;hb=2d705783b7d53f942c471703b131ed75f0edbe0c;hp=819e80640879f94a29e3556f7793c63f468ac7b3;hpb=cb5f80c10992b4d948a0b25b338d31af7d69a136;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ada/exp_ch9.ads b/gcc/ada/exp_ch9.ads index 819e8064087..88d0e05b55c 100644 --- a/gcc/ada/exp_ch9.ads +++ b/gcc/ada/exp_ch9.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, 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- -- @@ -26,6 +26,7 @@ -- Expand routines for chapter 9 constructs +with Namet; use Namet; with Types; use Types; package Exp_Ch9 is @@ -86,6 +87,14 @@ package Exp_Ch9 is -- Task_Id of the associated task as the parameter. The caller is -- responsible for analyzing and resolving the resulting tree. + function Build_Corresponding_Record + (N : Node_Id; + Ctyp : Node_Id; + Loc : Source_Ptr) return Node_Id; + -- Common to tasks and protected types. Copy discriminant specifications, + -- build record declaration. N is the type declaration, Ctyp is the + -- concurrent entity (task type or protected type). + procedure Build_Master_Entity (E : Entity_Id); -- Given an entity E for the declaration of an object containing tasks -- or of a type declaration for an allocator whose designated type is a @@ -250,16 +259,14 @@ package Exp_Ch9 is procedure Expand_N_Protected_Body (N : Node_Id); procedure Expand_N_Protected_Type_Declaration (N : Node_Id); - -- Expands protected type declarations. This results, among - -- other things, in the declaration of a record type for the - -- representation of protected objects and (if there are entries) - -- in an entry service procedure. The Protection value used by - -- the GNARL to control the object will always be the first - -- field of the record, and the entry service procedure spec - -- (if it exists) will always immediately follow the record - -- declaration. This allows these two nodes to be found from - -- the type using Corresponding_Record, without benefit of - -- of further attributes. + -- Expands protected type declarations. This results, among other things, + -- in the declaration of a record type for the representation of protected + -- objects and (if there are entries) in an entry service procedure. The + -- Protection value used by the GNARL to control the object will always be + -- the first field of the record, and the entry service procedure spec (if + -- it exists) will always immediately follow the record declaration. This + -- allows these two nodes to be found from the type, without benefit of + -- further attributes, using Corresponding_Record. procedure Expand_N_Requeue_Statement (N : Node_Id); procedure Expand_N_Selective_Accept (N : Node_Id);