OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [ada/] [prj-attr-pm.adb] - Blame information for rev 706

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 706 jeremybenn
------------------------------------------------------------------------------
2
--                                                                          --
3
--                         GNAT COMPILER COMPONENTS                         --
4
--                                                                          --
5
--                          P R J . A T T R . P M                           --
6
--                                                                          --
7
--                                 B o d y                                  --
8
--                                                                          --
9
--          Copyright (C) 2004-2010, Free Software Foundation, Inc.         --
10
--                                                                          --
11
-- GNAT is free software;  you can  redistribute it  and/or modify it under --
12
-- terms of the  GNU General Public License as published  by the Free Soft- --
13
-- ware  Foundation;  either version 3,  or (at your option) any later ver- --
14
-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
15
-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16
-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
17
-- for  more details.  You should have  received  a copy of the GNU General --
18
-- Public License  distributed with GNAT; see file COPYING3.  If not, go to --
19
-- http://www.gnu.org/licenses for a complete copy of the license.          --
20
--                                                                          --
21
-- GNAT was originally developed  by the GNAT team at  New York University. --
22
-- Extensive contributions were provided by Ada Core Technologies Inc.      --
23
--                                                                          --
24
------------------------------------------------------------------------------
25
 
26
package body Prj.Attr.PM is
27
 
28
   -------------------
29
   -- Add_Attribute --
30
   -------------------
31
 
32
   procedure Add_Attribute
33
     (To_Package     : Package_Node_Id;
34
      Attribute_Name : Name_Id;
35
      Attribute_Node : out Attribute_Node_Id)
36
   is
37
   begin
38
      --  Only add attribute if package is already defined and is not unknown
39
 
40
      if To_Package /= Empty_Package   and then
41
         To_Package /= Unknown_Package
42
      then
43
         Attrs.Append (
44
           (Name           => Attribute_Name,
45
            Var_Kind       => Undefined,
46
            Optional_Index => False,
47
            Attr_Kind      => Unknown,
48
            Read_Only      => False,
49
            Others_Allowed => False,
50
            Next           =>
51
              Package_Attributes.Table (To_Package.Value).First_Attribute));
52
 
53
         Package_Attributes.Table (To_Package.Value).First_Attribute :=
54
           Attrs.Last;
55
         Attribute_Node := (Value => Attrs.Last);
56
      end if;
57
   end Add_Attribute;
58
 
59
   -------------------------
60
   -- Add_Unknown_Package --
61
   -------------------------
62
 
63
   procedure Add_Unknown_Package (Name : Name_Id; Id : out Package_Node_Id) is
64
   begin
65
      Package_Attributes.Increment_Last;
66
      Id := (Value => Package_Attributes.Last);
67
      Package_Attributes.Table (Id.Value) :=
68
        (Name             => Name,
69
         Known            => False,
70
         First_Attribute  => Empty_Attr);
71
   end Add_Unknown_Package;
72
 
73
end Prj.Attr.PM;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.