OSDN Git Service

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