1   type LL_Task_Procedure_Access is access procedure (Arg : System.Address);
2
3   function Body_Required
4      (N : Node_Id) return Boolean is
5   begin
6      pragma Assert (False
7          or else NT (N).Nkind = N_Compilation_Unit);
8      return Flag13 (N);
9   end Body_Required;
10
11   type Type_Specific_Data is record
12      Idepth        : Natural;
13      Expanded_Name : Cstring_Ptr;
14      External_Tag  : Cstring_Ptr;
15      HT_Link       : Tag;
16      Ancestor_Tags : Tag_Table (Natural);
17   end record;
18
19   function "abs"   (Right : Complex) return Real'Base renames Modulus;
20
21   type Barrier_Function_Pointer is access
22     function
23       (O : System.Address;
24        E : Protected_Entry_Index)
25        return Boolean;
26
27   function "=" (L, R : System.Address) return Boolean
28     renames System."=";
29
30   type usfreelock_ptr is access
31     procedure (lock : ulock_t; arena : usptr_t_ptr);
32
33   function p pragma Import (C,
34                  "pthread_mutexattr_setprio_ceiling",
35                  "pthread_mutexattr_setprio_ceiling");
36   pragma Import ()
37   procedure LL_Wrapper (T : TCB_Ptr);
38
39function p ("p");
40
41-- This file is an Ada file containing test data
42-- for etags (Ada83 and Ada95 support).
43
44package Pkg1 is
45
46  type Private_T is private;
47
48  package Inner1 is
49    procedure Private_T;
50  end Inner1;
51
52  package Inner2 is
53    task Private_T;
54  end Inner2;
55
56  type Public_T is
57    record
58      A : Integer;
59      B : Integer;
60    end record;
61
62  procedure Pkg1_Proc1;
63
64  procedure Pkg1_Proc2 (I : Integer);
65
66  function Pkg1_Func1 return Boolean;
67
68  function Pkg1_Func2 (Ijk : Integer; Z : Integer) return Natural;
69
70
71  package Pkg1_Pkg1 is
72    procedure Pkg1_Pkg1_Proc1;
73  end Pkg1_Pkg1;
74
75  task type Task_Type is
76    entry Entry1;
77    entry Entry2 (I : Integer);
78  end;
79
80private
81
82  type Private_T is
83    record
84      Z : Integer;
85      W : Boolean;
86    end record;
87end Pkg1;
88
89package body Pkg1 is
90
91  procedure Pkg1_Proc1 is
92  begin
93    null;
94  end;
95
96  package body Inner1 is
97    procedure Private_T is
98    begin
99      null;
100    end;
101  end Inner1;
102
103  package body Inner2 is
104    task body Private_T is
105    begin
106      loop
107        null;
108      end loop;
109    end;
110  end Inner2;
111
112  task body Task_Type is
113  begin
114    select
115      accept Entry1 do
116        null;
117      end;
118    or
119      accept Entry2 (I : Integer) do
120        null;
121      end;
122    end select;
123  end;
124
125
126  procedure Pkg1_Proc2 (I : Integer) is
127  begin
128    null;
129  end Pkg1_Proc2;
130
131
132  function Pkg1_Func1 return Boolean is separate;
133
134  function Pkg1_Func2 (Ijk : Integer; Z : Integer) return Natural is
135  begin
136    return 1;
137  end;
138
139
140  package body Pkg1_Pkg1 is separate;
141
142
143end Pkg1;
144
145separate (Pkg1)
146package body Pkg1_Pkg1 is
147  procedure Pkg1_Pkg1_Proc1 is
148  begin
149    null;
150  end;
151end Pkg1_Pkg1;
152
153
154separate (Pkg1)
155function  Pkg1_Func1 return Boolean is
156begin
157  return False;
158end;
159
160
161-- from now on, this is Ada 95 specific.
162package Truc is
163  I : Integer;
164end Truc;
165
166package Truc.Bidule is
167
168  protected Bidule is
169    entry Basar;
170  end Bidule;
171
172  protected type Machin_T is
173    entry Truc;
174  end Machin_T;
175
176end Truc.Bidule;
177
178package body Truc.Bidule is
179  protected body Bidule is
180    entry Basar is
181    begin
182      null;
183    end;
184  end Bidule;
185
186  protected Machin_T is
187    entry Truc is
188    begin
189      null;
190    end;
191  end Machin_T;
192
193end Truc.Bidule;
194