* gcc.dg/compat/struct-layout-1_generate.c (dg_options): New. Moved
[official-gcc.git] / gcc / ada / snames.h
blob627950f5c9f8ea1364f0848d7ad6b86e50864ad7
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 ****************************************************************************/
26 /* This is the C file that corresponds to the Ada package specification
27 Snames. It was created automatically from the file snames.ads. */
29 /* Name_Id values */
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)
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. */
42 #define Get_Attribute_Id snames__get_attribute_id
43 extern unsigned char Get_Attribute_Id (int);
45 /* Define the numeric values for attributes. */
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
196 /* Define the numeric values for the conventions. */
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
212 /* Define the function to check if a Name_Id value is a valid pragma */
214 #define Is_Pragma_Name snames__is_pragma_name
215 extern Boolean Is_Pragma_Name (Name_Id);
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. */
222 #define Get_Pragma_Id snames__get_pragma_id
223 extern unsigned char Get_Pragma_Id (int);
225 /* Define the numeric values for the pragmas. */
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_Time_Slice 153
381 #define Pragma_Title 154
382 #define Pragma_Unchecked_Union 155
383 #define Pragma_Unimplemented_Unit 156
384 #define Pragma_Universal_Aliasing 157
385 #define Pragma_Unmodified 158
386 #define Pragma_Unreferenced 159
387 #define Pragma_Unreferenced_Objects 160
388 #define Pragma_Unreserve_All_Interrupts 161
389 #define Pragma_Volatile 162
390 #define Pragma_Volatile_Components 163
391 #define Pragma_Weak_External 164
392 #define Pragma_AST_Entry 165
393 #define Pragma_Fast_Math 166
394 #define Pragma_Interface 167
395 #define Pragma_Priority 168
396 #define Pragma_Storage_Size 169
397 #define Pragma_Storage_Unit 170
399 /* End of snames.h (C version of Snames package spec) */