OSDN Git Service

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