aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/gcc/ada/snames.h
blob: 627950f5c9f8ea1364f0848d7ad6b86e50864ad7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
/****************************************************************************
 *                                                                          *
 *                         GNAT COMPILER COMPONENTS                         *
 *                                                                          *
 *                               S N A M E S                                *
 *                                                                          *
 *                              C Header File                               *
 *                                                                          *
 *          Copyright (C) 1992-2008, Free Software Foundation, Inc.         *
 *                                                                          *
 * GNAT is free software;  you can  redistribute it  and/or modify it under *
 * terms of the  GNU General Public License as published  by the Free Soft- *
 * ware  Foundation;  either version 3,  or (at your option) any later ver- *
 * sion.  GNAT is distributed in the hope that it will be useful, but WITH- *
 * OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY *
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License *
 * for  more details.  You should have  received  a copy of the GNU General *
 * Public License  distributed with GNAT; see file COPYING3.  If not, go to *
 * http://www.gnu.org/licenses for a complete copy of the license.          *
 *                                                                          *
 * GNAT was originally developed  by the GNAT team at  New York University. *
 * Extensive contributions were provided by Ada Core Technologies Inc.      *
 *                                                                          *
 ****************************************************************************/

/* This is the C file that corresponds to the Ada package specification
   Snames. It was created automatically from the file snames.ads. */

/* Name_Id values */

#define Name_uParent    (First_Name_Id + 256 + 0)
#define Name_uTag       (First_Name_Id + 256 + 1)
#define Name_Off        (First_Name_Id + 256 + 2)
#define Name_Space      (First_Name_Id + 256 + 3)
#define Name_Time       (First_Name_Id + 256 + 4)

/* Define the function to return one of the numeric values below. Note
   that it actually returns a char since an enumeration value of less
   than 256 entries is represented that way in Ada.  The operand is a Chars
   field value.  */

#define Get_Attribute_Id snames__get_attribute_id
extern unsigned char Get_Attribute_Id (int);

/* Define the numeric values for attributes.  */

#define  Attr_Abort_Signal                  0
#define  Attr_Access                        1
#define  Attr_Address                       2
#define  Attr_Address_Size                  3
#define  Attr_Aft                           4
#define  Attr_Alignment                     5
#define  Attr_Asm_Input                     6
#define  Attr_Asm_Output                    7
#define  Attr_AST_Entry                     8
#define  Attr_Bit                           9
#define  Attr_Bit_Order                     10
#define  Attr_Bit_Position                  11
#define  Attr_Body_Version                  12
#define  Attr_Callable                      13
#define  Attr_Caller                        14
#define  Attr_Code_Address                  15
#define  Attr_Component_Size                16
#define  Attr_Compose                       17
#define  Attr_Constrained                   18
#define  Attr_Count                         19
#define  Attr_Default_Bit_Order             20
#define  Attr_Definite                      21
#define  Attr_Delta                         22
#define  Attr_Denorm                        23
#define  Attr_Digits                        24
#define  Attr_Elaborated                    25
#define  Attr_Emax                          26
#define  Attr_Enabled                       27
#define  Attr_Enum_Rep                      28
#define  Attr_Enum_Val                      29
#define  Attr_Epsilon                       30
#define  Attr_Exponent                      31
#define  Attr_External_Tag                  32
#define  Attr_Fast_Math                     33
#define  Attr_First                         34
#define  Attr_First_Bit                     35
#define  Attr_Fixed_Value                   36
#define  Attr_Fore                          37
#define  Attr_Has_Access_Values             38
#define  Attr_Has_Discriminants             39
#define  Attr_Has_Tagged_Values             40
#define  Attr_Identity                      41
#define  Attr_Img                           42
#define  Attr_Integer_Value                 43
#define  Attr_Invalid_Value                 44
#define  Attr_Large                         45
#define  Attr_Last                          46
#define  Attr_Last_Bit                      47
#define  Attr_Leading_Part                  48
#define  Attr_Length                        49
#define  Attr_Machine_Emax                  50
#define  Attr_Machine_Emin                  51
#define  Attr_Machine_Mantissa              52
#define  Attr_Machine_Overflows             53
#define  Attr_Machine_Radix                 54
#define  Attr_Machine_Rounding              55
#define  Attr_Machine_Rounds                56
#define  Attr_Machine_Size                  57
#define  Attr_Mantissa                      58
#define  Attr_Max_Size_In_Storage_Elements  59
#define  Attr_Maximum_Alignment             60
#define  Attr_Mechanism_Code                61
#define  Attr_Mod                           62
#define  Attr_Model_Emin                    63
#define  Attr_Model_Epsilon                 64
#define  Attr_Model_Mantissa                65
#define  Attr_Model_Small                   66
#define  Attr_Modulus                       67
#define  Attr_Null_Parameter                68
#define  Attr_Object_Size                   69
#define  Attr_Old                           70
#define  Attr_Partition_ID                  71
#define  Attr_Passed_By_Reference           72
#define  Attr_Pool_Address                  73
#define  Attr_Pos                           74
#define  Attr_Position                      75
#define  Attr_Priority                      76
#define  Attr_Range                         77
#define  Attr_Range_Length                  78
#define  Attr_Result                        79
#define  Attr_Round                         80
#define  Attr_Safe_Emax                     81
#define  Attr_Safe_First                    82
#define  Attr_Safe_Large                    83
#define  Attr_Safe_Last                     84
#define  Attr_Safe_Small                    85
#define  Attr_Scale                         86
#define  Attr_Scaling                       87
#define  Attr_Signed_Zeros                  88
#define  Attr_Size                          89
#define  Attr_Small                         90
#define  Attr_Storage_Size                  91
#define  Attr_Storage_Unit                  92
#define  Attr_Stream_Size                   93
#define  Attr_Tag                           94
#define  Attr_Target_Name                   95
#define  Attr_Terminated                    96
#define  Attr_To_Address                    97
#define  Attr_Type_Class                    98
#define  Attr_UET_Address                   99
#define  Attr_Unbiased_Rounding             100
#define  Attr_Unchecked_Access              101
#define  Attr_Unconstrained_Array           102
#define  Attr_Universal_Literal_String      103
#define  Attr_Unrestricted_Access           104
#define  Attr_VADS_Size                     105
#define  Attr_Val                           106
#define  Attr_Valid                         107
#define  Attr_Value_Size                    108
#define  Attr_Version                       109
#define  Attr_Wchar_T_Size                  110
#define  Attr_Wide_Wide_Width               111
#define  Attr_Wide_Width                    112
#define  Attr_Width                         113
#define  Attr_Word_Size                     114
#define  Attr_Adjacent                      115
#define  Attr_Ceiling                       116
#define  Attr_Copy_Sign                     117
#define  Attr_Floor                         118
#define  Attr_Fraction                      119
#define  Attr_From_Any                      120
#define  Attr_Image                         121
#define  Attr_Input                         122
#define  Attr_Machine                       123
#define  Attr_Max                           124
#define  Attr_Min                           125
#define  Attr_Model                         126
#define  Attr_Pred                          127
#define  Attr_Remainder                     128
#define  Attr_Rounding                      129
#define  Attr_Succ                          130
#define  Attr_To_Any                        131
#define  Attr_Truncation                    132
#define  Attr_TypeCode                      133
#define  Attr_Value                         134
#define  Attr_Wide_Image                    135
#define  Attr_Wide_Wide_Image               136
#define  Attr_Wide_Value                    137
#define  Attr_Wide_Wide_Value               138
#define  Attr_Output                        139
#define  Attr_Read                          140
#define  Attr_Write                         141
#define  Attr_Elab_Body                     142
#define  Attr_Elab_Spec                     143
#define  Attr_Storage_Pool                  144
#define  Attr_Base                          145
#define  Attr_Class                         146
#define  Attr_Stub_Type                     147

/* Define the numeric values for the conventions.  */

#define  Convention_Ada                           0
#define  Convention_Intrinsic                     1
#define  Convention_Entry                         2
#define  Convention_Protected                     3
#define  Convention_Stubbed                       4
#define  Convention_Assembler                     5
#define  Convention_C                             6
#define  Convention_CIL                           7
#define  Convention_COBOL                         8
#define  Convention_CPP                           9
#define  Convention_Fortran                       10
#define  Convention_Java                          11
#define  Convention_Stdcall                       12

/* Define the function to check if a Name_Id value is a valid pragma */

#define Is_Pragma_Name snames__is_pragma_name
extern Boolean Is_Pragma_Name (Name_Id);

/* Define the function to return one of the numeric values below.  Note
   that it actually returns a char since an enumeration value of less
   than 256 entries is represented that way in Ada.  The operand is a Chars
   field value.  */

#define Get_Pragma_Id snames__get_pragma_id
extern unsigned char Get_Pragma_Id (int);

/* Define the numeric values for the pragmas. */

#define  Pragma_Ada_83                        0
#define  Pragma_Ada_95                        1
#define  Pragma_Ada_05                        2
#define  Pragma_Ada_2005                      3
#define  Pragma_Assertion_Policy              4
#define  Pragma_Assume_No_Invalid_Values      5
#define  Pragma_C_Pass_By_Copy                6
#define  Pragma_Check_Name                    7
#define  Pragma_Check_Policy                  8
#define  Pragma_Compile_Time_Error            9
#define  Pragma_Compile_Time_Warning          10
#define  Pragma_Compiler_Unit                 11
#define  Pragma_Component_Alignment           12
#define  Pragma_Convention_Identifier         13
#define  Pragma_Debug_Policy                  14
#define  Pragma_Detect_Blocking               15
#define  Pragma_Discard_Names                 16
#define  Pragma_Elaboration_Checks            17
#define  Pragma_Eliminate                     18
#define  Pragma_Extend_System                 19
#define  Pragma_Extensions_Allowed            20
#define  Pragma_External_Name_Casing          21
#define  Pragma_Favor_Top_Level               22
#define  Pragma_Float_Representation          23
#define  Pragma_Implicit_Packing              24
#define  Pragma_Initialize_Scalars            25
#define  Pragma_Interrupt_State               26
#define  Pragma_License                       27
#define  Pragma_Locking_Policy                28
#define  Pragma_Long_Float                    29
#define  Pragma_No_Run_Time                   30
#define  Pragma_No_Strict_Aliasing            31
#define  Pragma_Normalize_Scalars             32
#define  Pragma_Optimize_Alignment            33
#define  Pragma_Persistent_BSS                34
#define  Pragma_Polling                       35
#define  Pragma_Priority_Specific_Dispatching 36
#define  Pragma_Profile                       37
#define  Pragma_Profile_Warnings              38
#define  Pragma_Propagate_Exceptions          39
#define  Pragma_Queuing_Policy                40
#define  Pragma_Ravenscar                     41
#define  Pragma_Restricted_Run_Time           42
#define  Pragma_Restrictions                  43
#define  Pragma_Restriction_Warnings          44
#define  Pragma_Reviewable                    45
#define  Pragma_Source_File_Name              46
#define  Pragma_Source_File_Name_Project      47
#define  Pragma_Style_Checks                  48
#define  Pragma_Suppress                      49
#define  Pragma_Suppress_Exception_Locations  50
#define  Pragma_Task_Dispatching_Policy       51
#define  Pragma_Universal_Data                52
#define  Pragma_Unsuppress                    53
#define  Pragma_Use_VADS_Size                 54
#define  Pragma_Validity_Checks               55
#define  Pragma_Warnings                      56
#define  Pragma_Wide_Character_Encoding       57
#define  Pragma_Abort_Defer                   58
#define  Pragma_All_Calls_Remote              59
#define  Pragma_Annotate                      60
#define  Pragma_Assert                        61
#define  Pragma_Asynchronous                  62
#define  Pragma_Atomic                        63
#define  Pragma_Atomic_Components             64
#define  Pragma_Attach_Handler                65
#define  Pragma_Check                         66
#define  Pragma_CIL_Constructor               67
#define  Pragma_Comment                       68
#define  Pragma_Common_Object                 69
#define  Pragma_Complete_Representation       70
#define  Pragma_Complex_Representation        71
#define  Pragma_Controlled                    72
#define  Pragma_Convention                    73
#define  Pragma_CPP_Class                     74
#define  Pragma_CPP_Constructor               75
#define  Pragma_CPP_Virtual                   76
#define  Pragma_CPP_Vtable                    77
#define  Pragma_Debug                         78
#define  Pragma_Elaborate                     79
#define  Pragma_Elaborate_All                 80
#define  Pragma_Elaborate_Body                81
#define  Pragma_Export                        82
#define  Pragma_Export_Exception              83
#define  Pragma_Export_Function               84
#define  Pragma_Export_Object                 85
#define  Pragma_Export_Procedure              86
#define  Pragma_Export_Value                  87
#define  Pragma_Export_Valued_Procedure       88
#define  Pragma_External                      89
#define  Pragma_Finalize_Storage_Only         90
#define  Pragma_Ident                         91
#define  Pragma_Implemented_By_Entry          92
#define  Pragma_Import                        93
#define  Pragma_Import_Exception              94
#define  Pragma_Import_Function               95
#define  Pragma_Import_Object                 96
#define  Pragma_Import_Procedure              97
#define  Pragma_Import_Valued_Procedure       98
#define  Pragma_Inline                        99
#define  Pragma_Inline_Always                 100
#define  Pragma_Inline_Generic                101
#define  Pragma_Inspection_Point              102
#define  Pragma_Interface_Name                103
#define  Pragma_Interrupt_Handler             104
#define  Pragma_Interrupt_Priority            105
#define  Pragma_Java_Constructor              106
#define  Pragma_Java_Interface                107
#define  Pragma_Keep_Names                    108
#define  Pragma_Link_With                     109
#define  Pragma_Linker_Alias                  110
#define  Pragma_Linker_Constructor            111
#define  Pragma_Linker_Destructor             112
#define  Pragma_Linker_Options                113
#define  Pragma_Linker_Section                114
#define  Pragma_List                          115
#define  Pragma_Machine_Attribute             116
#define  Pragma_Main                          117
#define  Pragma_Main_Storage                  118
#define  Pragma_Memory_Size                   119
#define  Pragma_No_Body                       120
#define  Pragma_No_Return                     121
#define  Pragma_Obsolescent                   122
#define  Pragma_Optimize                      123
#define  Pragma_Pack                          124
#define  Pragma_Page                          125
#define  Pragma_Passive                       126
#define  Pragma_Postcondition                 127
#define  Pragma_Precondition                  128
#define  Pragma_Preelaborable_Initialization  129
#define  Pragma_Preelaborate                  130
#define  Pragma_Preelaborate_05               131
#define  Pragma_Psect_Object                  132
#define  Pragma_Pure                          133
#define  Pragma_Pure_05                       134
#define  Pragma_Pure_Function                 135
#define  Pragma_Relative_Deadline             136
#define  Pragma_Remote_Call_Interface         137
#define  Pragma_Remote_Types                  138
#define  Pragma_Share_Generic                 139
#define  Pragma_Shared                        140
#define  Pragma_Shared_Passive                141
#define  Pragma_Source_Reference              142
#define  Pragma_Static_Elaboration_Desired    143
#define  Pragma_Stream_Convert                144
#define  Pragma_Subtitle                      145
#define  Pragma_Suppress_All                  146
#define  Pragma_Suppress_Debug_Info           147
#define  Pragma_Suppress_Initialization       148
#define  Pragma_System_Name                   149
#define  Pragma_Task_Info                     150
#define  Pragma_Task_Name                     151
#define  Pragma_Task_Storage                  152
#define  Pragma_Time_Slice                    153
#define  Pragma_Title                         154
#define  Pragma_Unchecked_Union               155
#define  Pragma_Unimplemented_Unit            156
#define  Pragma_Universal_Aliasing            157
#define  Pragma_Unmodified                    158
#define  Pragma_Unreferenced                  159
#define  Pragma_Unreferenced_Objects          160
#define  Pragma_Unreserve_All_Interrupts      161
#define  Pragma_Volatile                      162
#define  Pragma_Volatile_Components           163
#define  Pragma_Weak_External                 164
#define  Pragma_AST_Entry                     165
#define  Pragma_Fast_Math                     166
#define  Pragma_Interface                     167
#define  Pragma_Priority                      168
#define  Pragma_Storage_Size                  169
#define  Pragma_Storage_Unit                  170

/* End of snames.h (C version of Snames package spec) */