OSDN Git Service

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