OSDN Git Service

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