Add hppa-openbsd target
[official-gcc.git] / gcc / ada / snames.h
blob0a5078239003ef62ed3a627b0411c2d1b84bb06d
1 /****************************************************************************
2 * *
3 * GNAT COMPILER COMPONENTS *
4 * *
5 * S N A M E S *
6 * *
7 * C Header File *
8 * *
9 * *
10 * Copyright (C) 1992-2002 Free Software Foundation, Inc. *
11 * *
12 * GNAT is free software; you can redistribute it and/or modify it under *
13 * terms of the GNU General Public License as published by the Free Soft- *
14 * ware Foundation; either version 2, or (at your option) any later ver- *
15 * sion. GNAT is distributed in the hope that it will be useful, but WITH- *
16 * OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY *
17 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License *
18 * for more details. You should have received a copy of the GNU General *
19 * Public License distributed with GNAT; see file COPYING. If not, write *
20 * to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, *
21 * MA 02111-1307, USA. *
22 * *
23 * GNAT was originally developed by the GNAT team at New York University. *
24 * It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). *
25 * *
26 ****************************************************************************/
28 /* This is the C file that corresponds to the Ada package specification
29 Snames. It was created manually from the file snames.ads. */
31 /* Name_Id values */
33 #define Name_uParent (First_Name_Id + 256 + 0)
34 #define Name_uTag (First_Name_Id + 256 + 1)
35 #define Name_Off (First_Name_Id + 256 + 2)
36 #define Name_Space (First_Name_Id + 256 + 3)
37 #define Name_Time (First_Name_Id + 256 + 4)
38 #define Name_uInit_Proc (First_Name_Id + 256 + 5)
39 #define Name_uSize (First_Name_Id + 256 + 6)
41 /* Define the function to return one of the numeric values below. Note
42 that it actually returns a char since an enumeration value of less
43 than 256 entries is represented that way in Ada. The operand is a Chars
44 field value. */
46 #define Get_Attribute_Id snames__get_attribute_id
47 extern char Get_Attribute_Id PARAMS ((int));
49 /* Define the numeric values for the attributes. */
51 #define Attr_Abort_Signal 0
52 #define Attr_Access 1
53 #define Attr_Address 2
54 #define Attr_Address_Size 3
55 #define Attr_Aft 4
56 #define Attr_Alignment 5
57 #define Attr_Asm_Input 6
58 #define Attr_Asm_Output 7
59 #define Attr_AST_Entry 8
60 #define Attr_Bit 9
61 #define Attr_Bit_Order 10
62 #define Attr_Bit_Position 11
63 #define Attr_Body_Version 12
64 #define Attr_Callable 13
65 #define Attr_Caller 14
66 #define Attr_Code_Address 15
67 #define Attr_Component_Size 16
68 #define Attr_Compose 17
69 #define Attr_Constrained 18
70 #define Attr_Count 19
71 #define Attr_Default_Bit_Order 20
72 #define Attr_Definite 21
73 #define Attr_Delta 22
74 #define Attr_Denorm 23
75 #define Attr_Digits 24
76 #define Attr_Elaborated 25
77 #define Attr_Emax 26
78 #define Attr_Enum_Rep 27
79 #define Attr_Epsilon 28
80 #define Attr_Exponent 29
81 #define Attr_External_Tag 30
82 #define Attr_First 31
83 #define Attr_First_Bit 32
84 #define Attr_Fixed_Value 33
85 #define Attr_Fore 34
86 #define Attr_Has_Discriminants 35
87 #define Attr_Identity 36
88 #define Attr_Img 37
89 #define Attr_Integer_Value 38
90 #define Attr_Large 39
91 #define Attr_Last 40
92 #define Attr_Last_Bit 41
93 #define Attr_Leading_Part 42
94 #define Attr_Length 43
95 #define Attr_Machine_Emax 44
96 #define Attr_Machine_Emin 45
97 #define Attr_Machine_Mantissa 46
98 #define Attr_Machine_Overflows 47
99 #define Attr_Machine_Radix 48
100 #define Attr_Machine_Rounds 49
101 #define Attr_Machine_Size 50
102 #define Attr_Mantissa 51
103 #define Attr_Max_Size_In_Storage_Elements 52
104 #define Attr_Maximum_Alignment 53
105 #define Attr_Mechanism_Code 54
106 #define Attr_Model_Emin 55
107 #define Attr_Model_Epsilon 56
108 #define Attr_Model_Mantissa 57
109 #define Attr_Model_Small 58
110 #define Attr_Modulus 59
111 #define Attr_Null_Parameter 60
112 #define Attr_Object_Size 61
113 #define Attr_Partition_ID 62
114 #define Attr_Passed_By_Reference 63
115 #define Attr_Pos 64
116 #define Attr_Position 65
117 #define Attr_Range 66
118 #define Attr_Range_Length 67
119 #define Attr_Round 68
120 #define Attr_Safe_Emax 69
121 #define Attr_Safe_First 70
122 #define Attr_Safe_Large 71
123 #define Attr_Safe_Last 72
124 #define Attr_Safe_Small 73
125 #define Attr_Scale 74
126 #define Attr_Scaling 75
127 #define Attr_Signed_Zeros 76
128 #define Attr_Size 77
129 #define Attr_Small 78
130 #define Attr_Storage_Size 79
131 #define Attr_Storage_Unit 80
132 #define Attr_Tag 81
133 #define Attr_Terminated 82
134 #define Attr_To_Address 83
135 #define Attr_Type_Class 84
136 #define Attr_UET_Address 85
137 #define Attr_Unbiased_Rounding 86
138 #define Attr_Unchecked_Access 87
139 #define Attr_Universal_Literal_String 88
140 #define Attr_Unrestricted_Access 89
141 #define Attr_VADS_Size 90
142 #define Attr_Val 91
143 #define Attr_Valid 92
144 #define Attr_Value_Size 93
145 #define Attr_Version 94
146 #define Attr_Wide_Character_Size 95
147 #define Attr_Wide_Width 96
148 #define Attr_Width 97
149 #define Attr_Word_Size 98
151 #define Attr_Adjacent 99
152 #define Attr_Ceiling 100
153 #define Attr_Copy_Sign 101
154 #define Attr_Floor 102
155 #define Attr_Fraction 103
156 #define Attr_Image 104
157 #define Attr_Input 105
158 #define Attr_Machine 106
159 #define Attr_Max 107
160 #define Attr_Min 108
161 #define Attr_Model 109
162 #define Attr_Pred 110
163 #define Attr_Remainder 111
164 #define Attr_Rounding 112
165 #define Attr_Succ 113
166 #define Attr_Truncation 114
167 #define Attr_Value 115
168 #define Attr_Wide_Image 116
169 #define Attr_Wide_Value 117
171 #define Attr_Output 118
172 #define Attr_Read 119
173 #define Attr_Write 120
175 #define Attr_Elab_Body 121
176 #define Attr_Elab_Spec 122
177 #define Attr_Storage_Pool 123
179 #define Attr_Base 124
180 #define Attr_Class 125
182 /* Define the function to check if a Name_Id value is a valid pragma */
184 #define Is_Pragma_Name snames__is_pragma_name
185 extern Boolean Is_Pragma_Name PARAMS ((Name_Id));
187 /* Define the function to return one of the numeric values below. Note
188 that it actually returns a char since an enumeration value of less
189 than 256 entries is represented that way in Ada. The operand is a Chars
190 field value. */
192 #define Get_Pragma_Id snames__get_pragma_id
193 extern char Get_Pragma_Id PARAMS ((int));
195 /* Define the numeric values for the pragmas. */
197 /* Configuration pragmas first */
199 #define Pragma_Ada_83 0
200 #define Pragma_Ada_95 1
201 #define Pragma_C_Pass_By_Copy 2
202 #define Pragma_Component_Alignment 3
203 #define Pragma_Convention_Identifier 4
204 #define Pragma_Discard_Names 5
205 #define Pragma_Elaboration_Checking 6
206 #define Pragma_Eliminate 7
207 #define Pragma_Extend_System 8
208 #define Pragma_Extensions_Allowed 9
209 #define Pragma_External_Name_Casing 10
210 #define Pragma_Float_Representation 11
211 #define Pragma_Initialize 12
212 #define Pragma_License 13
213 #define Pragma_Locking_Policy 14
214 #define Pragma_Long_Float 15
215 #define Pragma_No_Run_Time 16
216 #define Pragma_Normalize_Scalars 17
217 #define Pragma_Polling 18
218 #define Pragma_Propagate_Exceptions 19
219 #define Pragma_Queuing_Policy 20
220 #define Pragma_Ravenscar 21
221 #define Pragma_Restricted_Run_Time 22
222 #define Pragma_Restrictions 23
223 #define Pragma_Reviewable 24
224 #define Pragma_Source_File_Name 25
225 #define Pragma_Style_Checks 26
226 #define Pragma_Suppress 27
227 #define Pragma_Task_Dispatching_Policy 28
228 #define Pragma_Unsuppress 29
229 #define Pragma_Use_VADS_Size 30
230 #define Pragma_Validity_Checks 31
231 #define Pragma_Warnings 32
233 /* Remaining pragmas */
235 #define Pragma_Abort_Defer 33
236 #define Pragma_All_Calls_Remote 34
237 #define Pragma_Annotate 35
238 #define Pragma_Assert 36
239 #define Pragma_Asynchronous 37
240 #define Pragma_Atomic 38
241 #define Pragma_Atomic_Components 39
242 #define Pragma_Attach_Handler 40
243 #define Pragma_Comment 41
244 #define Pragma_Common_Object 42
245 #define Pragma_Complex_Representation 43
246 #define Pragma_Controlled 44
247 #define Pragma_Convention 45
248 #define Pragma_CPP_Class 46
249 #define Pragma_CPP_Constructor 47
250 #define Pragma_CPP_Virtual 48
251 #define Pragma_CPP_Vtable 49
252 #define Pragma_Debug 50
253 #define Pragma_Elaborate 51
254 #define Pragma_Elaborate_All 52
255 #define Pragma_Elaborate_Body 53
256 #define Pragma_Export 54
257 #define Pragma_Export_Exception 55
258 #define Pragma_Export_Function 56
259 #define Pragma_Export_Object 57
260 #define Pragma_Export_Procedure 58
261 #define Pragma_Export_Valued_Procedure 59
262 #define Pragma_External 60
263 #define Pragma_Finalize_Storage_Only 61
264 #define Pragma_Ident 62
265 #define Pragma_Import 63
266 #define Pragma_Import_Exception 64
267 #define Pragma_Import_Function 65
268 #define Pragma_Import_Object 66
269 #define Pragma_Import_Procedure 67
270 #define Pragma_Import_Valued_Procedure 68
271 #define Pragma_Inline 69
272 #define Pragma_Inline_Always 70
273 #define Pragma_Inline_Generic 71
274 #define Pragma_Inspection_Point 72
275 #define Pragma_Interface 73
276 #define Pragma_Interface_Name 74
277 #define Pragma_Interrupt_Handler 75
278 #define Pragma_Interrupt_Priority 76
279 #define Pragma_Java_Constructor 77
280 #define Pragma_Java_Interface 78
281 #define Pragma_Link_With 79
282 #define Pragma_Linker_Alias 80
283 #define Pragma_Linker_Options 81
284 #define Pragma_Linker_Section 82
285 #define Pragma_List 83
286 #define Pragma_Machine_Attribute 84
287 #define Pragma_Main 85
288 #define Pragma_Main_Storage 86
289 #define Pragma_Memory_Size 87
290 #define Pragma_No_Return 88
291 #define Pragma_Optimize 89
292 #define Pragma_Pack 90
293 #define Pragma_Page 91
294 #define Pragma_Passive 92
295 #define Pragma_Preelaborate 93
296 #define Pragma_Priority 94
297 #define Pragma_Psect_Object 95
298 #define Pragma_Pure 96
299 #define Pragma_Pure_Function 97
300 #define Pragma_Remote_Call_Interface 98
301 #define Pragma_Remote_Types 99
302 #define Pragma_Share_Generic 100
303 #define Pragma_Shared 101
304 #define Pragma_Shared_Passive 102
305 #define Pragma_Source_Reference 103
306 #define Pragma_Stream_Convert 104
307 #define Pragma_Subtitle 105
308 #define Pragma_Suppress_All 106
309 #define Pragma_Suppress_Debug_Info 107
310 #define Pragma_Suppress_Initialization 108
311 #define Pragma_System_Name 109
312 #define Pragma_Task_Info 110
313 #define Pragma_Task_Name 111
314 #define Pragma_Task_Storage 112
315 #define Pragma_Time_Slice 113
316 #define Pragma_Title 114
317 #define Pragma_Unchecked_Union 115
318 #define Pragma_Unimplemented_Unit 116
319 #define Pragma_Universal_Data 117
320 #define Pragma_Unreferenced 118
321 #define Pragma_Unreserve_All_Interrupts 119
322 #define Pragma_Volatile 120
323 #define Pragma_Volatile_Components 121
324 #define Pragma_Weak_External 122
326 /* The following are deliberately out of alphabetical order, see Snames */
328 #define Pragma_AST_Entry 123
329 #define Pragma_Storage_Size 124
330 #define Pragma_Storage_Unit 125
332 /* Define the numeric values for the conventions. */
334 #define Convention_Ada 0
335 #define Convention_Intrinsic 1
336 #define Convention_Entry 2
337 #define Convention_Protected 3
338 #define Convention_Assembler 4
339 #define Convention_C 5
340 #define Convention_COBOL 6
341 #define Convention_CPP 7
342 #define Convention_Fortran 8
343 #define Convention_Java 9
344 #define Convention_Stdcall 10
345 #define Convention_Stubbed 11