OSDN Git Service

2005-09-01 Robert Dewar <dewar@adacore.com>
[pf3gnuchains/gcc-fork.git] / gcc / ada / snames.h
1 /****************************************************************************
2  *                                                                          *
3  *                         GNAT COMPILER COMPONENTS                         *
4  *                                                                          *
5  *                               S N A M E S                                *
6  *                                                                          *
7  *                              C Header File                               *
8  *                                                                          *
9  *          Copyright (C) 1992-2005, 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 2,  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 COPYING.  If not, write *
19  * to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, *
20  * Boston, MA 02110-1301, USA.                                              *
21  *                                                                          *
22  * GNAT was originally developed  by the GNAT team at  New York University. *
23  * Extensive contributions were provided by Ada Core Technologies Inc.      *
24  *                                                                          *
25  ****************************************************************************/
26
27 /* This is the C file that corresponds to the Ada package specification
28    Snames. It was created automatically from the file snames.ads. */
29
30 /* Name_Id values */
31
32 #define Name_uParent    (First_Name_Id + 256 + 0)
33 #define Name_uTag       (First_Name_Id + 256 + 1)
34 #define Name_Off        (First_Name_Id + 256 + 2)
35 #define Name_Space      (First_Name_Id + 256 + 3)
36 #define Name_Time       (First_Name_Id + 256 + 4)
37
38 /* Define the function to return one of the numeric values below. Note
39    that it actually returns a char since an enumeration value of less
40    than 256 entries is represented that way in Ada.  The operand is a Chars
41    field value.  */
42
43 #define Get_Attribute_Id snames__get_attribute_id
44 extern unsigned char Get_Attribute_Id (int);
45
46 /* Define the numeric values for attributes.  */
47
48 #define  Attr_Abort_Signal                  0
49 #define  Attr_Access                        1
50 #define  Attr_Address                       2
51 #define  Attr_Address_Size                  3
52 #define  Attr_Aft                           4
53 #define  Attr_Alignment                     5
54 #define  Attr_Asm_Input                     6
55 #define  Attr_Asm_Output                    7
56 #define  Attr_AST_Entry                     8
57 #define  Attr_Bit                           9
58 #define  Attr_Bit_Order                     10
59 #define  Attr_Bit_Position                  11
60 #define  Attr_Body_Version                  12
61 #define  Attr_Callable                      13
62 #define  Attr_Caller                        14
63 #define  Attr_Code_Address                  15
64 #define  Attr_Component_Size                16
65 #define  Attr_Compose                       17
66 #define  Attr_Constrained                   18
67 #define  Attr_Count                         19
68 #define  Attr_Default_Bit_Order             20
69 #define  Attr_Definite                      21
70 #define  Attr_Delta                         22
71 #define  Attr_Denorm                        23
72 #define  Attr_Digits                        24
73 #define  Attr_Elaborated                    25
74 #define  Attr_Emax                          26
75 #define  Attr_Enum_Rep                      27
76 #define  Attr_Epsilon                       28
77 #define  Attr_Exponent                      29
78 #define  Attr_External_Tag                  30
79 #define  Attr_First                         31
80 #define  Attr_First_Bit                     32
81 #define  Attr_Fixed_Value                   33
82 #define  Attr_Fore                          34
83 #define  Attr_Has_Access_Values             35
84 #define  Attr_Has_Discriminants             36
85 #define  Attr_Identity                      37
86 #define  Attr_Img                           38
87 #define  Attr_Integer_Value                 39
88 #define  Attr_Large                         40
89 #define  Attr_Last                          41
90 #define  Attr_Last_Bit                      42
91 #define  Attr_Leading_Part                  43
92 #define  Attr_Length                        44
93 #define  Attr_Machine_Emax                  45
94 #define  Attr_Machine_Emin                  46
95 #define  Attr_Machine_Mantissa              47
96 #define  Attr_Machine_Overflows             48
97 #define  Attr_Machine_Radix                 49
98 #define  Attr_Machine_Rounds                50
99 #define  Attr_Machine_Size                  51
100 #define  Attr_Mantissa                      52
101 #define  Attr_Max_Size_In_Storage_Elements  53
102 #define  Attr_Maximum_Alignment             54
103 #define  Attr_Mechanism_Code                55
104 #define  Attr_Mod                           56
105 #define  Attr_Model_Emin                    57
106 #define  Attr_Model_Epsilon                 58
107 #define  Attr_Model_Mantissa                59
108 #define  Attr_Model_Small                   60
109 #define  Attr_Modulus                       61
110 #define  Attr_Null_Parameter                62
111 #define  Attr_Object_Size                   63
112 #define  Attr_Partition_ID                  64
113 #define  Attr_Passed_By_Reference           65
114 #define  Attr_Pool_Address                  66
115 #define  Attr_Pos                           67
116 #define  Attr_Position                      68
117 #define  Attr_Range                         69
118 #define  Attr_Range_Length                  70
119 #define  Attr_Round                         71
120 #define  Attr_Safe_Emax                     72
121 #define  Attr_Safe_First                    73
122 #define  Attr_Safe_Large                    74
123 #define  Attr_Safe_Last                     75
124 #define  Attr_Safe_Small                    76
125 #define  Attr_Scale                         77
126 #define  Attr_Scaling                       78
127 #define  Attr_Signed_Zeros                  79
128 #define  Attr_Size                          80
129 #define  Attr_Small                         81
130 #define  Attr_Storage_Size                  82
131 #define  Attr_Storage_Unit                  83
132 #define  Attr_Stream_Size                   84
133 #define  Attr_Tag                           85
134 #define  Attr_Target_Name                   86
135 #define  Attr_Terminated                    87
136 #define  Attr_To_Address                    88
137 #define  Attr_Type_Class                    89
138 #define  Attr_UET_Address                   90
139 #define  Attr_Unbiased_Rounding             91
140 #define  Attr_Unchecked_Access              92
141 #define  Attr_Unconstrained_Array           93
142 #define  Attr_Universal_Literal_String      94
143 #define  Attr_Unrestricted_Access           95
144 #define  Attr_VADS_Size                     96
145 #define  Attr_Val                           97
146 #define  Attr_Valid                         98
147 #define  Attr_Value_Size                    99
148 #define  Attr_Version                       100
149 #define  Attr_Wchar_T_Size                  101
150 #define  Attr_Wide_Wide_Width               102
151 #define  Attr_Wide_Width                    103
152 #define  Attr_Width                         104
153 #define  Attr_Word_Size                     105
154 #define  Attr_Adjacent                      106
155 #define  Attr_Ceiling                       107
156 #define  Attr_Copy_Sign                     108
157 #define  Attr_Floor                         109
158 #define  Attr_Fraction                      110
159 #define  Attr_Image                         111
160 #define  Attr_Input                         112
161 #define  Attr_Machine                       113
162 #define  Attr_Max                           114
163 #define  Attr_Min                           115
164 #define  Attr_Model                         116
165 #define  Attr_Pred                          117
166 #define  Attr_Remainder                     118
167 #define  Attr_Rounding                      119
168 #define  Attr_Succ                          120
169 #define  Attr_Truncation                    121
170 #define  Attr_Value                         122
171 #define  Attr_Wide_Image                    123
172 #define  Attr_Wide_Wide_Image               124
173 #define  Attr_Wide_Value                    125
174 #define  Attr_Wide_Wide_Value               126
175 #define  Attr_Output                        127
176 #define  Attr_Read                          128
177 #define  Attr_Write                         129
178 #define  Attr_Elab_Body                     130
179 #define  Attr_Elab_Spec                     131
180 #define  Attr_Storage_Pool                  132
181 #define  Attr_Base                          133
182 #define  Attr_Class                         134
183
184 /* Define the numeric values for the conventions.  */
185
186 #define  Convention_Ada                           0
187 #define  Convention_Intrinsic                     1
188 #define  Convention_Entry                         2
189 #define  Convention_Protected                     3
190 #define  Convention_Assembler                     4
191 #define  Convention_C                             5
192 #define  Convention_COBOL                         6
193 #define  Convention_CPP                           7
194 #define  Convention_Fortran                       8
195 #define  Convention_Java                          9
196 #define  Convention_Stdcall                       10
197 #define  Convention_Stubbed                       11
198
199 /* Define the function to check if a Name_Id value is a valid pragma */
200
201 #define Is_Pragma_Name snames__is_pragma_name
202 extern Boolean Is_Pragma_Name (Name_Id);
203
204 /* Define the function to return one of the numeric values below.  Note
205    that it actually returns a char since an enumeration value of less
206    than 256 entries is represented that way in Ada.  The operand is a Chars
207    field value.  */
208
209 #define Get_Pragma_Id snames__get_pragma_id
210 extern unsigned char Get_Pragma_Id (int);
211
212 /* Define the numeric values for the pragmas. */
213
214 #define  Pragma_Ada_83                        0
215 #define  Pragma_Ada_95                        1
216 #define  Pragma_Ada_05                        2
217 #define  Pragma_Assertion_Policy              3
218 #define  Pragma_C_Pass_By_Copy                4
219 #define  Pragma_Compile_Time_Warning          5
220 #define  Pragma_Component_Alignment           6
221 #define  Pragma_Convention_Identifier         7
222 #define  Pragma_Debug_Policy                  8
223 #define  Pragma_Detect_Blocking               9
224 #define  Pragma_Discard_Names                 10
225 #define  Pragma_Elaboration_Checks            11
226 #define  Pragma_Eliminate                     12
227 #define  Pragma_Explicit_Overriding           13
228 #define  Pragma_Extend_System                 14
229 #define  Pragma_Extensions_Allowed            15
230 #define  Pragma_External_Name_Casing          16
231 #define  Pragma_Float_Representation          17
232 #define  Pragma_Initialize_Scalars            18
233 #define  Pragma_Interrupt_State               19
234 #define  Pragma_License                       20
235 #define  Pragma_Locking_Policy                21
236 #define  Pragma_Long_Float                    22
237 #define  Pragma_No_Run_Time                   23
238 #define  Pragma_No_Strict_Aliasing            24
239 #define  Pragma_Normalize_Scalars             25
240 #define  Pragma_Polling                       26
241 #define  Pragma_Persistent_BSS                27
242 #define  Pragma_Profile                       28
243 #define  Pragma_Profile_Warnings              29
244 #define  Pragma_Propagate_Exceptions          30
245 #define  Pragma_Queuing_Policy                31
246 #define  Pragma_Ravenscar                     32
247 #define  Pragma_Restricted_Run_Time           33
248 #define  Pragma_Restrictions                  34
249 #define  Pragma_Restriction_Warnings          35
250 #define  Pragma_Reviewable                    36
251 #define  Pragma_Source_File_Name              37
252 #define  Pragma_Source_File_Name_Project      38
253 #define  Pragma_Style_Checks                  39
254 #define  Pragma_Suppress                      40
255 #define  Pragma_Suppress_Exception_Locations  41
256 #define  Pragma_Task_Dispatching_Policy       42
257 #define  Pragma_Universal_Data                43
258 #define  Pragma_Unsuppress                    44
259 #define  Pragma_Use_VADS_Size                 45
260 #define  Pragma_Validity_Checks               46
261 #define  Pragma_Warnings                      47
262 #define  Pragma_Abort_Defer                   48
263 #define  Pragma_All_Calls_Remote              49
264 #define  Pragma_Annotate                      50
265 #define  Pragma_Assert                        51
266 #define  Pragma_Asynchronous                  52
267 #define  Pragma_Atomic                        53
268 #define  Pragma_Atomic_Components             54
269 #define  Pragma_Attach_Handler                55
270 #define  Pragma_Comment                       56
271 #define  Pragma_Common_Object                 57
272 #define  Pragma_Complex_Representation        58
273 #define  Pragma_Controlled                    59
274 #define  Pragma_Convention                    60
275 #define  Pragma_CPP_Class                     61
276 #define  Pragma_CPP_Constructor               62
277 #define  Pragma_CPP_Virtual                   63
278 #define  Pragma_CPP_Vtable                    64
279 #define  Pragma_Debug                         65
280 #define  Pragma_Elaborate                     66
281 #define  Pragma_Elaborate_All                 67
282 #define  Pragma_Elaborate_Body                68
283 #define  Pragma_Export                        69
284 #define  Pragma_Export_Exception              70
285 #define  Pragma_Export_Function               71
286 #define  Pragma_Export_Object                 72
287 #define  Pragma_Export_Procedure              73
288 #define  Pragma_Export_Value                  74
289 #define  Pragma_Export_Valued_Procedure       75
290 #define  Pragma_External                      76
291 #define  Pragma_Finalize_Storage_Only         77
292 #define  Pragma_Ident                         78
293 #define  Pragma_Import                        79
294 #define  Pragma_Import_Exception              80
295 #define  Pragma_Import_Function               81
296 #define  Pragma_Import_Object                 82
297 #define  Pragma_Import_Procedure              83
298 #define  Pragma_Import_Valued_Procedure       84
299 #define  Pragma_Inline                        85
300 #define  Pragma_Inline_Always                 86
301 #define  Pragma_Inline_Generic                87
302 #define  Pragma_Inspection_Point              88
303 #define  Pragma_Interface_Name                89
304 #define  Pragma_Interrupt_Handler             90
305 #define  Pragma_Interrupt_Priority            91
306 #define  Pragma_Java_Constructor              92
307 #define  Pragma_Java_Interface                93
308 #define  Pragma_Keep_Names                    94
309 #define  Pragma_Link_With                     95
310 #define  Pragma_Linker_Alias                  96
311 #define  Pragma_Linker_Constructor            97
312 #define  Pragma_Linker_Destructor             98
313 #define  Pragma_Linker_Options                99
314 #define  Pragma_Linker_Section                100
315 #define  Pragma_List                          101
316 #define  Pragma_Machine_Attribute             102
317 #define  Pragma_Main                          103
318 #define  Pragma_Main_Storage                  104
319 #define  Pragma_Memory_Size                   105
320 #define  Pragma_No_Return                     106
321 #define  Pragma_Obsolescent                   107
322 #define  Pragma_Optimize                      108
323 #define  Pragma_Optional_Overriding           109
324 #define  Pragma_Pack                          110
325 #define  Pragma_Page                          111
326 #define  Pragma_Passive                       112
327 #define  Pragma_Preelaborate                  113
328 #define  Pragma_Preelaborate_05               114
329 #define  Pragma_Priority                      115
330 #define  Pragma_Psect_Object                  116
331 #define  Pragma_Pure                          117
332 #define  Pragma_Pure_05                       118
333 #define  Pragma_Pure_Function                 119
334 #define  Pragma_Remote_Call_Interface         120
335 #define  Pragma_Remote_Types                  121
336 #define  Pragma_Share_Generic                 122
337 #define  Pragma_Shared                        123
338 #define  Pragma_Shared_Passive                124
339 #define  Pragma_Source_Reference              125
340 #define  Pragma_Stream_Convert                126
341 #define  Pragma_Subtitle                      127
342 #define  Pragma_Suppress_All                  128
343 #define  Pragma_Suppress_Debug_Info           129
344 #define  Pragma_Suppress_Initialization       130
345 #define  Pragma_System_Name                   131
346 #define  Pragma_Task_Info                     132
347 #define  Pragma_Task_Name                     133
348 #define  Pragma_Task_Storage                  134
349 #define  Pragma_Thread_Body                   135
350 #define  Pragma_Time_Slice                    136
351 #define  Pragma_Title                         137
352 #define  Pragma_Unchecked_Union               138
353 #define  Pragma_Unimplemented_Unit            139
354 #define  Pragma_Unreferenced                  140
355 #define  Pragma_Unreserve_All_Interrupts      141
356 #define  Pragma_Volatile                      142
357 #define  Pragma_Volatile_Components           143
358 #define  Pragma_Weak_External                 144
359 #define  Pragma_AST_Entry                     145
360 #define  Pragma_Interface                     146
361 #define  Pragma_Storage_Size                  147
362 #define  Pragma_Storage_Unit                  148
363
364 /* End of snames.h (C version of Snames package spec) */