Subversion Repositories tendra.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
2
    		 Crown Copyright (c) 1997
3
 
4
    This TenDRA(r) Computer Program is subject to Copyright
5
    owned by the United Kingdom Secretary of State for Defence
6
    acting through the Defence Evaluation and Research Agency
7
    (DERA).  It is made available to Recipients with a
8
    royalty-free licence for its use, reproduction, transfer
9
    to other parties and amendment for any purpose not excluding
10
    product development provided that any such use et cetera
11
    shall be deemed to be acceptance of the following conditions:-
12
 
13
        (1) Its Recipients shall ensure that this Notice is
14
        reproduced upon any copies or amended versions of it;
15
 
16
        (2) Any amended version of it shall be clearly marked to
17
        show both the nature of and the organisation responsible
18
        for the relevant amendment or amendments;
19
 
20
        (3) Its onward transfer from a recipient to another
21
        party shall be deemed to be that party's acceptance of
22
        these conditions;
23
 
24
        (4) DERA gives no warranty or assurance as to its
25
        quality or suitability for any purpose and DERA accepts
26
        no liability whatsoever in relation to any use to which
27
        it may be put.
28
*/
29
 
30
 
31
/*
32
    AUTOMATICALLY GENERATED FROM TDF 4.1
33
    BY make_tdf (VERSION 2.0), DO NOT EDIT
34
*/
35
 
36
#define TDF_major				4
37
#define TDF_minor				1
38
 
39
#define LINK_al_tagdef_props			"aldef"
40
#define LINK_dg_comp_props			"dgcompunit"
41
#define LINK_diag_type_unit			"diagtype"
42
#define LINK_diag_unit				"diagdef"
43
#define LINK_linkinfo_props			"linkinfo"
44
#define LINK_tagdec_props			"tagdec"
45
#define LINK_tagdef_props			"tagdef"
46
#define LINK_tokdec_props			"tokdec"
47
#define LINK_tokdef_props			"tokdef"
48
#define LINK_version_props			"versions"
49
#define LINK_tld_props				"tld"
50
 
51
#define LINK_al_tag				"alignment"
52
#define LINK_dg_tag				"dgtag"
53
#define LINK_diag_tag				"diagtag"
54
#define LINK_tag				"tag"
55
#define LINK_token				"token"
56
#define LINK_label				"label"
57
 
58
#define LINK_dg					"DG"
59
#define LINK_dg_dim				"DG_DIM"
60
#define LINK_dg_filename			"DG_FILENAME"
61
#define LINK_dg_idname				"DG_IDNAME"
62
#define LINK_dg_name				"DG_NAME"
63
#define LINK_dg_type				"DG_TYPE"
64
#define LINK_diag_type				"diag_type"
65
#define LINK_filename				"~diag_file"
66
 
67
#define ENS_access( A, B )			ENC_BITS ( A, 4, B )
68
#define ENX_access( A, B )			ENC_EXTN ( A, 4, B )
69
#define ENC_access_apply_token( A )		ENS_access ( A, 1 )
70
#define ENC_access_cond( A )			ENS_access ( A, 2 )
71
#define ENC_add_accesses( A )			ENS_access ( A, 3 )
72
#define ENC_constant( A )			ENS_access ( A, 4 )
73
#define ENC_long_jump_access( A )		ENS_access ( A, 5 )
74
#define ENC_no_other_read( A )			ENS_access ( A, 6 )
75
#define ENC_no_other_write( A )			ENS_access ( A, 7 )
76
#define ENC_out_par( A )			ENS_access ( A, 8 )
77
#define ENC_preserve( A )			ENS_access ( A, 9 )
78
#define ENC_register( A )			ENS_access ( A, 10 )
79
#define ENC_standard_access( A )		ENS_access ( A, 11 )
80
#define ENC_used_as_volatile( A )		ENS_access ( A, 12 )
81
#define ENC_visible( A )			ENS_access ( A, 13 )
82
 
83
#define ENS_al_tag( A, B )			ENC_BITS ( A, 1, B )
84
#define ENX_al_tag( A, B )			ENC_EXTN ( A, 1, B )
85
#define ENC_al_tag_apply_token( A )		ENX_al_tag ( A, 2 )
86
#define ENC_make_al_tag( A, B )			{ ENS_al_tag ( A, 1 ) ; ENC_INT ( A, B ) ; }
87
 
88
#define ENS_al_tagdef( A, B )			ENC_BITS ( A, 1, B )
89
#define ENX_al_tagdef( A, B )			ENC_EXTN ( A, 1, B )
90
#define ENC_make_al_tagdef( A )			ENS_al_tagdef ( A, 1 )
91
 
92
#define ENS_alignment( A, B )			ENC_BITS ( A, 4, B )
93
#define ENX_alignment( A, B )			ENC_EXTN ( A, 4, B )
94
#define ENC_alignment_apply_token( A )		ENS_alignment ( A, 1 )
95
#define ENC_alignment_cond( A )			ENS_alignment ( A, 2 )
96
#define ENC_alignment( A )			ENS_alignment ( A, 3 )
97
#define ENC_alloca_alignment( A )		ENS_alignment ( A, 4 )
98
#define ENC_callees_alignment( A )		ENS_alignment ( A, 5 )
99
#define ENC_callers_alignment( A )		ENS_alignment ( A, 6 )
100
#define ENC_code_alignment( A )			ENS_alignment ( A, 7 )
101
#define ENC_locals_alignment( A )		ENS_alignment ( A, 8 )
102
#define ENC_obtain_al_tag( A )			ENS_alignment ( A, 9 )
103
#define ENC_parameter_alignment( A )		ENS_alignment ( A, 10 )
104
#define ENC_unite_alignments( A )		ENS_alignment ( A, 11 )
105
#define ENC_var_param_alignment( A )		ENS_alignment ( A, 12 )
106
 
107
#define ENS_bitfield_variety( A, B )		ENC_BITS ( A, 2, B )
108
#define ENX_bitfield_variety( A, B )		ENC_EXTN ( A, 2, B )
109
#define ENC_bfvar_apply_token( A )		ENS_bitfield_variety ( A, 1 )
110
#define ENC_bfvar_cond( A )			ENS_bitfield_variety ( A, 2 )
111
#define ENC_bfvar_bits( A )			ENS_bitfield_variety ( A, 3 )
112
 
113
#define ENS_bool( A, B )			ENC_BITS ( A, 3, B )
114
#define ENX_bool( A, B )			ENC_EXTN ( A, 3, B )
115
#define ENC_bool_apply_token( A )		ENS_bool ( A, 1 )
116
#define ENC_bool_cond( A )			ENS_bool ( A, 2 )
117
#define ENC_false( A )				ENS_bool ( A, 3 )
118
#define ENC_true( A )				ENS_bool ( A, 4 )
119
 
120
#define ENS_callees( A, B )			ENC_BITS ( A, 2, B )
121
#define ENX_callees( A, B )			ENC_EXTN ( A, 2, B )
122
#define ENC_make_callee_list( A )		ENS_callees ( A, 1 )
123
#define ENC_make_dynamic_callees( A )		ENS_callees ( A, 2 )
124
#define ENC_same_callees( A )			ENS_callees ( A, 3 )
125
 
126
#define ENS_dg( A, B )				ENC_BITS ( A, 6, B )
127
#define ENX_dg( A, B )				ENC_EXTN ( A, 6, B )
128
#define ENC_dg_apply_token( A )			ENS_dg ( A, 1 )
129
#define ENC_make_tag_dg( A )			ENS_dg ( A, 2 )
130
#define ENC_abortable_part_dg( A )		ENS_dg ( A, 3 )
131
#define ENC_accept_dg( A )			ENS_dg ( A, 4 )
132
#define ENC_barrier_dg( A )			ENS_dg ( A, 5 )
133
#define ENC_branch_dg( A )			ENS_dg ( A, 6 )
134
#define ENC_call_dg( A )			ENS_dg ( A, 7 )
135
#define ENC_compilation_dg( A )			ENS_dg ( A, 8 )
136
#define ENC_destructor_dg( A )			ENS_dg ( A, 9 )
137
#define ENC_exception_handler_dg( A )		ENS_dg ( A, 10 )
138
#define ENC_exception_scope_dg( A )		ENS_dg ( A, 11 )
139
#define ENC_inline_call_dg( A )			ENS_dg ( A, 12 )
140
#define ENC_inline_result_dg( A )		ENS_dg ( A, 13 )
141
#define ENC_inlined_dg( A )			ENS_dg ( A, 14 )
142
#define ENC_jump_dg( A )			ENS_dg ( A, 15 )
143
#define ENC_label_dg( A )			ENS_dg ( A, 16 )
144
#define ENC_lexical_block_dg( A )		ENS_dg ( A, 17 )
145
#define ENC_list_dg( A )			ENS_dg ( A, 18 )
146
#define ENC_long_jump_dg( A )			ENS_dg ( A, 19 )
147
#define ENC_name_decl_dg( A )			ENS_dg ( A, 20 )
148
#define ENC_params_dg( A )			ENS_dg ( A, 21 )
149
#define ENC_raise_dg( A )			ENS_dg ( A, 22 )
150
#define ENC_requeue_dg( A )			ENS_dg ( A, 23 )
151
#define ENC_rts_call_dg( A )			ENS_dg ( A, 24 )
152
#define ENC_select_dg( A )			ENS_dg ( A, 25 )
153
#define ENC_select_alternative_dg( A )		ENS_dg ( A, 26 )
154
#define ENC_select_guard_dg( A )		ENS_dg ( A, 27 )
155
#define ENC_singlestep_dg( A )			ENS_dg ( A, 28 )
156
#define ENC_source_language_dg( A )		ENS_dg ( A, 29 )
157
#define ENC_sourcepos_dg( A )			ENS_dg ( A, 30 )
158
#define ENC_statement_part_dg( A )		ENS_dg ( A, 31 )
159
#define ENC_test_dg( A )			ENS_dg ( A, 32 )
160
#define ENC_triggering_alternative_dg( A )	ENS_dg ( A, 33 )
161
#define ENC_with_dg( A )			ENS_dg ( A, 34 )
162
 
163
#define ENS_dg_accessibility( A, B )		ENC_BITS ( A, 2, B )
164
#define ENX_dg_accessibility( A, B )		ENC_EXTN ( A, 2, B )
165
#define ENC_dg_local_accessibility( A )		ENS_dg_accessibility ( A, 1 )
166
#define ENC_dg_private_accessibility( A )	ENS_dg_accessibility ( A, 2 )
167
#define ENC_dg_protected_accessibility( A )	ENS_dg_accessibility ( A, 3 )
168
#define ENC_dg_public_accessibility( A )	ENX_dg_accessibility ( A, 4 )
169
 
170
#define ENS_dg_append( A, B )			ENC_BITS ( A, 1, B )
171
#define ENX_dg_append( A, B )			ENC_EXTN ( A, 1, B )
172
#define ENC_dg_name_append( A )			ENS_dg_append ( A, 1 )
173
 
174
#define ENS_dg_bound( A, B )			ENC_BITS ( A, 2, B )
175
#define ENX_dg_bound( A, B )			ENC_EXTN ( A, 2, B )
176
#define ENC_dg_dynamic_bound( A )		ENS_dg_bound ( A, 1 )
177
#define ENC_dg_static_bound( A )		ENS_dg_bound ( A, 2 )
178
#define ENC_dg_unknown_bound( A )		ENS_dg_bound ( A, 3 )
179
 
180
#define ENS_dg_class_base( A, B )		ENC_BITS ( A, 1, B )
181
#define ENX_dg_class_base( A, B )		ENC_EXTN ( A, 1, B )
182
#define ENC_make_dg_class_base( A )		ENS_dg_class_base ( A, 1 )
183
 
184
#define ENS_dg_classmem( A, B )			ENC_BITS ( A, 3, B )
185
#define ENX_dg_classmem( A, B )			ENC_EXTN ( A, 3, B )
186
#define ENC_dg_tag_classmem( A )		ENS_dg_classmem ( A, 1 )
187
#define ENC_dg_field_classmem( A )		ENS_dg_classmem ( A, 2 )
188
#define ENC_dg_function_classmem( A )		ENS_dg_classmem ( A, 3 )
189
#define ENC_dg_indirect_classmem( A )		ENS_dg_classmem ( A, 4 )
190
#define ENC_dg_name_classmem( A )		ENS_dg_classmem ( A, 5 )
191
 
192
#define ENS_dg_compilation( A, B )		ENC_BITS ( A, 2, B )
193
#define ENX_dg_compilation( A, B )		ENC_EXTN ( A, 2, B )
194
#define ENC_dg_tag_compilation( A )		ENS_dg_compilation ( A, 1 )
195
#define ENC_make_dg_compilation( A )		ENS_dg_compilation ( A, 2 )
196
 
197
#define ENS_dg_constraint( A, B )		ENC_BITS ( A, 2, B )
198
#define ENX_dg_constraint( A, B )		ENC_EXTN ( A, 2, B )
199
#define ENC_dg_type_constraint( A )		ENS_dg_constraint ( A, 1 )
200
#define ENC_dg_value_constraint( A )		ENS_dg_constraint ( A, 2 )
201
 
202
#define ENS_dg_default( A, B )			ENC_BITS ( A, 1, B )
203
#define ENX_dg_default( A, B )			ENC_EXTN ( A, 1, B )
204
#define ENC_make_dg_default( A )		ENS_dg_default ( A, 1 )
205
 
206
#define ENS_dg_dim( A, B )			ENC_BITS ( A, 3, B )
207
#define ENX_dg_dim( A, B )			ENC_EXTN ( A, 3, B )
208
#define ENC_dg_dim_apply_token( A )		ENS_dg_dim ( A, 1 )
209
#define ENC_dg_tag_dim( A )			ENS_dg_dim ( A, 2 )
210
#define ENC_dg_bounds_dim( A )			ENS_dg_dim ( A, 3 )
211
#define ENC_dg_count_dim( A )			ENS_dg_dim ( A, 4 )
212
#define ENC_dg_type_dim( A )			ENS_dg_dim ( A, 5 )
213
#define ENC_dg_unspecified_dim( A )		ENS_dg_dim ( A, 6 )
214
 
215
#define ENS_dg_discrim( A, B )			ENC_BITS ( A, 1, B )
216
#define ENX_dg_discrim( A, B )			ENC_EXTN ( A, 1, B )
217
#define ENC_make_dg_discrim( A )		ENS_dg_discrim ( A, 1 )
218
 
219
#define ENS_dg_enum( A, B )			ENC_BITS ( A, 2, B )
220
#define ENX_dg_enum( A, B )			ENC_EXTN ( A, 2, B )
221
#define ENC_dg_tag_enum( A )			ENS_dg_enum ( A, 1 )
222
#define ENC_make_dg_enum( A )			ENS_dg_enum ( A, 2 )
223
#define ENC_dg_char_enum( A )			ENS_dg_enum ( A, 3 )
224
 
225
#define ENS_dg_filename( A, B )			ENC_BITS ( A, 2, B )
226
#define ENX_dg_filename( A, B )			ENC_EXTN ( A, 2, B )
227
#define ENC_dg_filename_apply_token( A )	ENS_dg_filename ( A, 1 )
228
#define ENC_make_dg_filename( A )		ENS_dg_filename ( A, 2 )
229
 
230
#define ENS_dg_idname( A, B )			ENC_BITS ( A, 3, B )
231
#define ENX_dg_idname( A, B )			ENC_EXTN ( A, 3, B )
232
#define ENC_dg_idname_apply_token( A )		ENS_dg_idname ( A, 1 )
233
#define ENC_dg_anonymous_idname( A )		ENS_dg_idname ( A, 2 )
234
#define ENC_dg_artificial_idname( A )		ENS_dg_idname ( A, 3 )
235
#define ENC_dg_external_idname( A )		ENS_dg_idname ( A, 4 )
236
#define ENC_dg_instance_idname( A )		ENS_dg_idname ( A, 5 )
237
#define ENC_dg_sourcestring_idname( A )		ENS_dg_idname ( A, 6 )
238
 
239
#define ENS_dg_macro( A, B )			ENC_BITS ( A, 2, B )
240
#define ENX_dg_macro( A, B )			ENC_EXTN ( A, 2, B )
241
#define ENC_dg_function_macro( A )		ENS_dg_macro ( A, 1 )
242
#define ENC_dg_include_macro( A )		ENS_dg_macro ( A, 2 )
243
#define ENC_dg_object_macro( A )		ENS_dg_macro ( A, 3 )
244
#define ENC_dg_undef_macro( A )			ENX_dg_macro ( A, 4 )
245
 
246
#define ENS_dg_name( A, B )			ENC_BITS ( A, 5, B )
247
#define ENX_dg_name( A, B )			ENC_EXTN ( A, 5, B )
248
#define ENC_dg_name_apply_token( A )		ENS_dg_name ( A, 1 )
249
#define ENC_dg_tag_name( A )			ENS_dg_name ( A, 2 )
250
#define ENC_dg_constant_name( A )		ENS_dg_name ( A, 3 )
251
#define ENC_dg_entry_family_name( A )		ENS_dg_name ( A, 4 )
252
#define ENC_dg_entry_name( A )			ENS_dg_name ( A, 5 )
253
#define ENC_dg_inlined_name( A )		ENS_dg_name ( A, 6 )
254
#define ENC_dg_is_spec_name( A )		ENS_dg_name ( A, 7 )
255
#define ENC_dg_module_name( A )			ENS_dg_name ( A, 8 )
256
#define ENC_dg_namespace_name( A )		ENS_dg_name ( A, 9 )
257
#define ENC_dg_object_name( A )			ENS_dg_name ( A, 10 )
258
#define ENC_dg_proc_name( A )			ENS_dg_name ( A, 11 )
259
#define ENC_dg_program_name( A )		ENS_dg_name ( A, 12 )
260
#define ENC_dg_rep_clause_name( A )		ENS_dg_name ( A, 13 )
261
#define ENC_dg_spec_ref_name( A )		ENS_dg_name ( A, 14 )
262
#define ENC_dg_subunit_name( A )		ENS_dg_name ( A, 15 )
263
#define ENC_dg_type_name( A )			ENS_dg_name ( A, 16 )
264
#define ENC_dg_visibility_name( A )		ENS_dg_name ( A, 17 )
265
 
266
#define ENS_dg_namelist( A, B )			ENC_BITS ( A, 2, B )
267
#define ENX_dg_namelist( A, B )			ENC_EXTN ( A, 2, B )
268
#define ENC_dg_tag_namelist( A )		ENS_dg_namelist ( A, 1 )
269
#define ENC_make_dg_namelist( A )		ENS_dg_namelist ( A, 2 )
270
 
271
#define ENS_dg_param( A, B )			ENC_BITS ( A, 2, B )
272
#define ENX_dg_param( A, B )			ENC_EXTN ( A, 2, B )
273
#define ENC_dg_object_param( A )		ENS_dg_param ( A, 1 )
274
#define ENC_dg_type_param( A )			ENS_dg_param ( A, 2 )
275
 
276
#define ENS_dg_param_mode( A, B )		ENC_BITS ( A, 2, B )
277
#define ENX_dg_param_mode( A, B )		ENC_EXTN ( A, 2, B )
278
#define ENC_dg_in_mode( A )			ENS_dg_param_mode ( A, 1 )
279
#define ENC_dg_inout_mode( A )			ENS_dg_param_mode ( A, 2 )
280
#define ENC_dg_out_mode( A )			ENS_dg_param_mode ( A, 3 )
281
 
282
#define ENS_dg_qualifier( A, B )		ENC_BITS ( A, 3, B )
283
#define ENX_dg_qualifier( A, B )		ENC_EXTN ( A, 3, B )
284
#define ENC_dg_aliased_qualifier( A )		ENS_dg_qualifier ( A, 1 )
285
#define ENC_dg_class_wide_qualifier( A )	ENS_dg_qualifier ( A, 2 )
286
#define ENC_dg_const_qualifier( A )		ENS_dg_qualifier ( A, 3 )
287
#define ENC_dg_limited_qualifier( A )		ENS_dg_qualifier ( A, 4 )
288
#define ENC_dg_volatile_qualifier( A )		ENS_dg_qualifier ( A, 5 )
289
 
290
#define ENS_dg_sourcepos( A, B )		ENC_BITS ( A, 3, B )
291
#define ENX_dg_sourcepos( A, B )		ENC_EXTN ( A, 3, B )
292
#define ENC_dg_file_sourcepos( A )		ENS_dg_sourcepos ( A, 1 )
293
#define ENC_dg_global_sourcepos( A )		ENS_dg_sourcepos ( A, 2 )
294
#define ENC_dg_mark_sourcepos( A )		ENS_dg_sourcepos ( A, 3 )
295
#define ENC_dg_null_sourcepos( A )		ENS_dg_sourcepos ( A, 4 )
296
#define ENC_dg_span_sourcepos( A )		ENS_dg_sourcepos ( A, 5 )
297
 
298
#define ENS_dg_tag( A, B )			ENC_BITS ( A, 1, B )
299
#define ENX_dg_tag( A, B )			ENC_EXTN ( A, 1, B )
300
#define ENC_make_dg_tag( A, B )			{ ENS_dg_tag ( A, 1 ) ; ENC_INT ( A, B ) ; }
301
 
302
#define ENS_dg_type( A, B )			ENC_BITS ( A, 6, B )
303
#define ENX_dg_type( A, B )			ENC_EXTN ( A, 6, B )
304
#define ENC_dg_type_apply_token( A )		ENS_dg_type ( A, 1 )
305
#define ENC_dg_tag_type( A )			ENS_dg_type ( A, 2 )
306
#define ENC_dg_address_type( A )		ENS_dg_type ( A, 3 )
307
#define ENC_dg_array_type( A )			ENS_dg_type ( A, 4 )
308
#define ENC_dg_bitfield_type( A )		ENS_dg_type ( A, 5 )
309
#define ENC_dg_boolean_type( A )		ENS_dg_type ( A, 6 )
310
#define ENC_dg_char_type( A )			ENS_dg_type ( A, 7 )
311
#define ENC_dg_class_type( A )			ENS_dg_type ( A, 8 )
312
#define ENC_dg_complex_float_type( A )		ENS_dg_type ( A, 9 )
313
#define ENC_dg_enum_type( A )			ENS_dg_type ( A, 10 )
314
#define ENC_dg_file_type( A )			ENS_dg_type ( A, 11 )
315
#define ENC_dg_fixed_point_type( A )		ENS_dg_type ( A, 12 )
316
#define ENC_dg_float_type( A )			ENS_dg_type ( A, 13 )
317
#define ENC_dg_floating_digits_type( A )	ENS_dg_type ( A, 14 )
318
#define ENC_dg_inlined_type( A )		ENS_dg_type ( A, 15 )
319
#define ENC_dg_integer_type( A )		ENS_dg_type ( A, 16 )
320
#define ENC_dg_is_spec_type( A )		ENS_dg_type ( A, 17 )
321
#define ENC_dg_modular_type( A )		ENS_dg_type ( A, 18 )
322
#define ENC_dg_named_type( A )			ENS_dg_type ( A, 19 )
323
#define ENC_dg_packed_type( A )			ENS_dg_type ( A, 20 )
324
#define ENC_dg_pointer_type( A )		ENS_dg_type ( A, 21 )
325
#define ENC_dg_proc_type( A )			ENS_dg_type ( A, 22 )
326
#define ENC_dg_ptr_memdata_type( A )		ENS_dg_type ( A, 23 )
327
#define ENC_dg_ptr_memfn_type( A )		ENS_dg_type ( A, 24 )
328
#define ENC_dg_qualified_type( A )		ENS_dg_type ( A, 25 )
329
#define ENC_dg_reference_type( A )		ENS_dg_type ( A, 26 )
330
#define ENC_dg_set_type( A )			ENS_dg_type ( A, 27 )
331
#define ENC_dg_spec_ref_type( A )		ENS_dg_type ( A, 28 )
332
#define ENC_dg_string_type( A )			ENS_dg_type ( A, 29 )
333
#define ENC_dg_struct_type( A )			ENS_dg_type ( A, 30 )
334
#define ENC_dg_subrange_type( A )		ENS_dg_type ( A, 31 )
335
#define ENC_dg_synchronous_type( A )		ENS_dg_type ( A, 32 )
336
#define ENC_dg_task_type( A )			ENS_dg_type ( A, 33 )
337
#define ENC_dg_unknown_type( A )		ENS_dg_type ( A, 34 )
338
#define ENC_dg_void_type( A )			ENS_dg_type ( A, 35 )
339
 
340
#define ENS_dg_variant( A, B )			ENC_BITS ( A, 1, B )
341
#define ENX_dg_variant( A, B )			ENC_EXTN ( A, 1, B )
342
#define ENC_make_dg_variant( A )		ENS_dg_variant ( A, 1 )
343
 
344
#define ENS_dg_varpart( A, B )			ENC_BITS ( A, 2, B )
345
#define ENX_dg_varpart( A, B )			ENC_EXTN ( A, 2, B )
346
#define ENC_dg_discrim_varpart( A )		ENS_dg_varpart ( A, 1 )
347
#define ENC_dg_sibl_discrim_varpart( A )	ENS_dg_varpart ( A, 2 )
348
#define ENC_dg_undiscrim_varpart( A )		ENS_dg_varpart ( A, 3 )
349
 
350
#define ENS_dg_virtuality( A, B )		ENC_BITS ( A, 2, B )
351
#define ENX_dg_virtuality( A, B )		ENC_EXTN ( A, 2, B )
352
#define ENC_dg_abstract_virtuality( A )		ENS_dg_virtuality ( A, 1 )
353
#define ENC_dg_virtual_virtuality( A )		ENS_dg_virtuality ( A, 2 )
354
 
355
#define ENS_diag_descriptor( A, B )		ENC_BITS ( A, 2, B )
356
#define ENX_diag_descriptor( A, B )		ENC_EXTN ( A, 2, B )
357
#define ENC_diag_desc_id( A )			ENS_diag_descriptor ( A, 1 )
358
#define ENC_diag_desc_struct( A )		ENS_diag_descriptor ( A, 2 )
359
#define ENC_diag_desc_typedef( A )		ENS_diag_descriptor ( A, 3 )
360
 
361
#define ENS_diag_tag( A, B )			ENC_BITS ( A, 1, B )
362
#define ENX_diag_tag( A, B )			ENC_EXTN ( A, 1, B )
363
#define ENC_make_diag_tag( A, B )		{ ENS_diag_tag ( A, 1 ) ; ENC_INT ( A, B ) ; }
364
 
365
#define ENS_diag_tagdef( A, B )			ENC_BITS ( A, 1, B )
366
#define ENX_diag_tagdef( A, B )			ENC_EXTN ( A, 1, B )
367
#define ENC_make_diag_tagdef( A )		ENS_diag_tagdef ( A, 1 )
368
 
369
#define ENS_diag_tq( A, B )			ENC_BITS ( A, 2, B )
370
#define ENX_diag_tq( A, B )			ENC_EXTN ( A, 2, B )
371
#define ENC_add_diag_const( A )			ENS_diag_tq ( A, 1 )
372
#define ENC_add_diag_volatile( A )		ENS_diag_tq ( A, 2 )
373
#define ENC_diag_tq_null( A )			ENS_diag_tq ( A, 3 )
374
 
375
#define ENS_diag_type( A, B )			ENC_BITS ( A, 4, B )
376
#define ENX_diag_type( A, B )			ENC_EXTN ( A, 4, B )
377
#define ENC_diag_type_apply_token( A )		ENS_diag_type ( A, 1 )
378
#define ENC_diag_array( A )			ENS_diag_type ( A, 2 )
379
#define ENC_diag_bitfield( A )			ENS_diag_type ( A, 3 )
380
#define ENC_diag_enum( A )			ENS_diag_type ( A, 4 )
381
#define ENC_diag_floating_variety( A )		ENS_diag_type ( A, 5 )
382
#define ENC_diag_loc( A )			ENS_diag_type ( A, 6 )
383
#define ENC_diag_proc( A )			ENS_diag_type ( A, 7 )
384
#define ENC_diag_ptr( A )			ENS_diag_type ( A, 8 )
385
#define ENC_diag_struct( A )			ENS_diag_type ( A, 9 )
386
#define ENC_diag_type_null( A )			ENS_diag_type ( A, 10 )
387
#define ENC_diag_union( A )			ENS_diag_type ( A, 11 )
388
#define ENC_diag_variety( A )			ENS_diag_type ( A, 12 )
389
#define ENC_use_diag_tag( A )			ENS_diag_type ( A, 13 )
390
 
391
#define ENS_error_code( A, B )			ENC_BITS ( A, 2, B )
392
#define ENX_error_code( A, B )			ENC_EXTN ( A, 2, B )
393
#define ENC_nil_access( A )			ENS_error_code ( A, 1 )
394
#define ENC_overflow( A )			ENS_error_code ( A, 2 )
395
#define ENC_stack_overflow( A )			ENS_error_code ( A, 3 )
396
 
397
#define ENS_error_treatment( A, B )		ENC_BITS ( A, 3, B )
398
#define ENX_error_treatment( A, B )		ENC_EXTN ( A, 3, B )
399
#define ENC_errt_apply_token( A )		ENS_error_treatment ( A, 1 )
400
#define ENC_errt_cond( A )			ENS_error_treatment ( A, 2 )
401
#define ENC_continue( A )			ENS_error_treatment ( A, 3 )
402
#define ENC_error_jump( A )			ENS_error_treatment ( A, 4 )
403
#define ENC_trap( A )				ENS_error_treatment ( A, 5 )
404
#define ENC_wrap( A )				ENS_error_treatment ( A, 6 )
405
#define ENC_impossible( A )			ENS_error_treatment ( A, 7 )
406
 
407
#define ENS_exp( A, B )				ENC_BITS ( A, 7, B )
408
#define ENX_exp( A, B )				ENC_EXTN ( A, 7, B )
409
#define ENC_exp_apply_token( A )		ENS_exp ( A, 1 )
410
#define ENC_exp_cond( A )			ENS_exp ( A, 2 )
411
#define ENC_abs( A )				ENS_exp ( A, 3 )
412
#define ENC_add_to_ptr( A )			ENS_exp ( A, 4 )
413
#define ENC_and( A )				ENS_exp ( A, 5 )
414
#define ENC_apply_proc( A )			ENS_exp ( A, 6 )
415
#define ENC_apply_general_proc( A )		ENS_exp ( A, 7 )
416
#define ENC_assign( A )				ENS_exp ( A, 8 )
417
#define ENC_assign_with_mode( A )		ENS_exp ( A, 9 )
418
#define ENC_bitfield_assign( A )		ENS_exp ( A, 10 )
419
#define ENC_bitfield_assign_with_mode( A )	ENS_exp ( A, 11 )
420
#define ENC_bitfield_contents( A )		ENS_exp ( A, 12 )
421
#define ENC_bitfield_contents_with_mode( A )	ENS_exp ( A, 13 )
422
#define ENC_case( A )				ENS_exp ( A, 14 )
423
#define ENC_change_bitfield_to_int( A )		ENS_exp ( A, 15 )
424
#define ENC_change_floating_variety( A )	ENS_exp ( A, 16 )
425
#define ENC_change_variety( A )			ENS_exp ( A, 17 )
426
#define ENC_change_int_to_bitfield( A )		ENS_exp ( A, 18 )
427
#define ENC_complex_conjugate( A )		ENS_exp ( A, 19 )
428
#define ENC_component( A )			ENS_exp ( A, 20 )
429
#define ENC_concat_nof( A )			ENS_exp ( A, 21 )
430
#define ENC_conditional( A )			ENS_exp ( A, 22 )
431
#define ENC_contents( A )			ENS_exp ( A, 23 )
432
#define ENC_contents_with_mode( A )		ENS_exp ( A, 24 )
433
#define ENC_current_env( A )			ENS_exp ( A, 25 )
434
#define ENC_div0( A )				ENS_exp ( A, 26 )
435
#define ENC_div1( A )				ENS_exp ( A, 27 )
436
#define ENC_div2( A )				ENS_exp ( A, 28 )
437
#define ENC_env_offset( A )			ENS_exp ( A, 29 )
438
#define ENC_env_size( A )			ENS_exp ( A, 30 )
439
#define ENC_fail_installer( A )			ENS_exp ( A, 31 )
440
#define ENC_float_int( A )			ENS_exp ( A, 32 )
441
#define ENC_floating_abs( A )			ENS_exp ( A, 33 )
442
#define ENC_floating_div( A )			ENS_exp ( A, 34 )
443
#define ENC_floating_minus( A )			ENS_exp ( A, 35 )
444
#define ENC_floating_maximum( A )		ENS_exp ( A, 36 )
445
#define ENC_floating_minimum( A )		ENS_exp ( A, 37 )
446
#define ENC_floating_mult( A )			ENS_exp ( A, 38 )
447
#define ENC_floating_negate( A )		ENS_exp ( A, 39 )
448
#define ENC_floating_plus( A )			ENS_exp ( A, 40 )
449
#define ENC_floating_power( A )			ENS_exp ( A, 41 )
450
#define ENC_floating_test( A )			ENS_exp ( A, 42 )
451
#define ENC_goto( A )				ENS_exp ( A, 43 )
452
#define ENC_goto_local_lv( A )			ENS_exp ( A, 44 )
453
#define ENC_identify( A )			ENS_exp ( A, 45 )
454
#define ENC_ignorable( A )			ENS_exp ( A, 46 )
455
#define ENC_imaginary_part( A )			ENS_exp ( A, 47 )
456
#define ENC_initial_value( A )			ENS_exp ( A, 48 )
457
#define ENC_integer_test( A )			ENS_exp ( A, 49 )
458
#define ENC_labelled( A )			ENS_exp ( A, 50 )
459
#define ENC_last_local( A )			ENS_exp ( A, 51 )
460
#define ENC_local_alloc( A )			ENS_exp ( A, 52 )
461
#define ENC_local_alloc_check( A )		ENS_exp ( A, 53 )
462
#define ENC_local_free( A )			ENS_exp ( A, 54 )
463
#define ENC_local_free_all( A )			ENS_exp ( A, 55 )
464
#define ENC_long_jump( A )			ENS_exp ( A, 56 )
465
#define ENC_make_complex( A )			ENS_exp ( A, 57 )
466
#define ENC_make_compound( A )			ENS_exp ( A, 58 )
467
#define ENC_make_floating( A )			ENS_exp ( A, 59 )
468
#define ENC_make_general_proc( A )		ENS_exp ( A, 60 )
469
#define ENC_make_int( A )			ENS_exp ( A, 61 )
470
#define ENC_make_local_lv( A )			ENS_exp ( A, 62 )
471
#define ENC_make_nof( A )			ENS_exp ( A, 63 )
472
#define ENC_make_nof_int( A )			ENS_exp ( A, 64 )
473
#define ENC_make_null_local_lv( A )		ENS_exp ( A, 65 )
474
#define ENC_make_null_proc( A )			ENS_exp ( A, 66 )
475
#define ENC_make_null_ptr( A )			ENS_exp ( A, 67 )
476
#define ENC_make_proc( A )			ENS_exp ( A, 68 )
477
#define ENC_make_stack_limit( A )		ENS_exp ( A, 116 )
478
#define ENC_make_top( A )			ENS_exp ( A, 69 )
479
#define ENC_make_value( A )			ENS_exp ( A, 70 )
480
#define ENC_maximum( A )			ENS_exp ( A, 71 )
481
#define ENC_minimum( A )			ENS_exp ( A, 72 )
482
#define ENC_minus( A )				ENS_exp ( A, 73 )
483
#define ENC_move_some( A )			ENS_exp ( A, 74 )
484
#define ENC_mult( A )				ENS_exp ( A, 75 )
485
#define ENC_n_copies( A )			ENS_exp ( A, 76 )
486
#define ENC_negate( A )				ENS_exp ( A, 77 )
487
#define ENC_not( A )				ENS_exp ( A, 78 )
488
#define ENC_obtain_tag( A )			ENS_exp ( A, 79 )
489
#define ENC_offset_add( A )			ENS_exp ( A, 80 )
490
#define ENC_offset_div( A )			ENS_exp ( A, 81 )
491
#define ENC_offset_div_by_int( A )		ENS_exp ( A, 82 )
492
#define ENC_offset_max( A )			ENS_exp ( A, 83 )
493
#define ENC_offset_mult( A )			ENS_exp ( A, 84 )
494
#define ENC_offset_negate( A )			ENS_exp ( A, 85 )
495
#define ENC_offset_pad( A )			ENS_exp ( A, 86 )
496
#define ENC_offset_subtract( A )		ENS_exp ( A, 87 )
497
#define ENC_offset_test( A )			ENS_exp ( A, 88 )
498
#define ENC_offset_zero( A )			ENS_exp ( A, 89 )
499
#define ENC_or( A )				ENS_exp ( A, 90 )
500
#define ENC_plus( A )				ENS_exp ( A, 91 )
501
#define ENC_pointer_test( A )			ENS_exp ( A, 92 )
502
#define ENC_power( A )				ENS_exp ( A, 93 )
503
#define ENC_proc_test( A )			ENS_exp ( A, 94 )
504
#define ENC_profile( A )			ENS_exp ( A, 95 )
505
#define ENC_real_part( A )			ENS_exp ( A, 96 )
506
#define ENC_rem0( A )				ENS_exp ( A, 97 )
507
#define ENC_rem1( A )				ENS_exp ( A, 98 )
508
#define ENC_rem2( A )				ENS_exp ( A, 99 )
509
#define ENC_repeat( A )				ENS_exp ( A, 100 )
510
#define ENC_return( A )				ENS_exp ( A, 101 )
511
#define ENC_return_to_label( A )		ENS_exp ( A, 102 )
512
#define ENC_round_with_mode( A )		ENS_exp ( A, 103 )
513
#define ENC_rotate_left( A )			ENS_exp ( A, 104 )
514
#define ENC_rotate_right( A )			ENS_exp ( A, 105 )
515
#define ENC_sequence( A )			ENS_exp ( A, 106 )
516
#define ENC_set_stack_limit( A )		ENS_exp ( A, 107 )
517
#define ENC_shape_offset( A )			ENS_exp ( A, 108 )
518
#define ENC_shift_left( A )			ENS_exp ( A, 109 )
519
#define ENC_shift_right( A )			ENS_exp ( A, 110 )
520
#define ENC_subtract_ptrs( A )			ENS_exp ( A, 111 )
521
#define ENC_tail_call( A )			ENS_exp ( A, 112 )
522
#define ENC_untidy_return( A )			ENS_exp ( A, 113 )
523
#define ENC_variable( A )			ENS_exp ( A, 114 )
524
#define ENC_xor( A )				ENS_exp ( A, 115 )
525
 
526
#define ENS_external( A, B )			ENC_BITS ( A, 2, B )
527
#define ENX_external( A, B )			ENC_EXTN ( A, 2, B )
528
#define ENC_string_extern( A )			ENS_external ( A, 1 )
529
#define ENC_unique_extern( A )			ENS_external ( A, 2 )
530
#define ENC_chain_extern( A )			ENS_external ( A, 3 )
531
 
532
#define ENS_filename( A, B )			ENC_BITS ( A, 2, B )
533
#define ENX_filename( A, B )			ENC_EXTN ( A, 2, B )
534
#define ENC_filename_apply_token( A )		ENS_filename ( A, 1 )
535
#define ENC_make_filename( A )			ENS_filename ( A, 2 )
536
 
537
#define ENS_floating_variety( A, B )		ENC_BITS ( A, 3, B )
538
#define ENX_floating_variety( A, B )		ENC_EXTN ( A, 3, B )
539
#define ENC_flvar_apply_token( A )		ENS_floating_variety ( A, 1 )
540
#define ENC_flvar_cond( A )			ENS_floating_variety ( A, 2 )
541
#define ENC_flvar_parms( A )			ENS_floating_variety ( A, 3 )
542
#define ENC_complex_parms( A )			ENS_floating_variety ( A, 4 )
543
#define ENC_float_of_complex( A )		ENS_floating_variety ( A, 5 )
544
#define ENC_complex_of_float( A )		ENS_floating_variety ( A, 6 )
545
 
546
#define ENS_label( A, B )			ENC_BITS ( A, 1, B )
547
#define ENX_label( A, B )			ENC_EXTN ( A, 1, B )
548
#define ENC_label_apply_token( A )		ENX_label ( A, 2 )
549
#define ENC_make_label( A, B )			{ ENS_label ( A, 1 ) ; ENC_INT ( A, B ) ; }
550
 
551
#define ENS_linkinfo( A, B )			ENC_BITS ( A, 2, B )
552
#define ENX_linkinfo( A, B )			ENC_EXTN ( A, 2, B )
553
#define ENC_static_name_def( A )		ENS_linkinfo ( A, 1 )
554
#define ENC_make_comment( A )			ENS_linkinfo ( A, 2 )
555
#define ENC_make_weak_defn( A )			ENS_linkinfo ( A, 3 )
556
#define ENC_make_weak_symbol( A )		ENX_linkinfo ( A, 4 )
557
 
558
#define ENS_nat( A, B )				ENC_BITS ( A, 3, B )
559
#define ENX_nat( A, B )				ENC_EXTN ( A, 3, B )
560
#define ENC_nat_apply_token( A )		ENS_nat ( A, 1 )
561
#define ENC_nat_cond( A )			ENS_nat ( A, 2 )
562
#define ENC_computed_nat( A )			ENS_nat ( A, 3 )
563
#define ENC_error_val( A )			ENS_nat ( A, 4 )
564
#define ENC_make_nat( A )			ENS_nat ( A, 5 )
565
 
566
#define ENS_ntest( A, B )			ENC_BITS ( A, 4, B )
567
#define ENX_ntest( A, B )			ENC_EXTN ( A, 4, B )
568
#define ENC_ntest_apply_token( A )		ENS_ntest ( A, 1 )
569
#define ENC_ntest_cond( A )			ENS_ntest ( A, 2 )
570
#define ENC_equal( A )				ENS_ntest ( A, 3 )
571
#define ENC_greater_than( A )			ENS_ntest ( A, 4 )
572
#define ENC_greater_than_or_equal( A )		ENS_ntest ( A, 5 )
573
#define ENC_less_than( A )			ENS_ntest ( A, 6 )
574
#define ENC_less_than_or_equal( A )		ENS_ntest ( A, 7 )
575
#define ENC_not_equal( A )			ENS_ntest ( A, 8 )
576
#define ENC_not_greater_than( A )		ENS_ntest ( A, 9 )
577
#define ENC_not_greater_than_or_equal( A )	ENS_ntest ( A, 10 )
578
#define ENC_not_less_than( A )			ENS_ntest ( A, 11 )
579
#define ENC_not_less_than_or_equal( A )		ENS_ntest ( A, 12 )
580
#define ENC_less_than_or_greater_than( A )	ENS_ntest ( A, 13 )
581
#define ENC_not_less_than_and_not_great( A )	ENS_ntest ( A, 14 )
582
#define ENC_comparable( A )			ENS_ntest ( A, 15 )
583
#define ENC_not_comparable( A )			ENX_ntest ( A, 16 )
584
 
585
#define ENS_procprops( A, B )			ENC_BITS ( A, 4, B )
586
#define ENX_procprops( A, B )			ENC_EXTN ( A, 4, B )
587
#define ENC_procprops_apply_token( A )		ENS_procprops ( A, 1 )
588
#define ENC_procprops_cond( A )			ENS_procprops ( A, 2 )
589
#define ENC_add_procprops( A )			ENS_procprops ( A, 3 )
590
#define ENC_check_stack( A )			ENS_procprops ( A, 4 )
591
#define ENC_inline( A )				ENS_procprops ( A, 5 )
592
#define ENC_no_long_jump_dest( A )		ENS_procprops ( A, 6 )
593
#define ENC_untidy( A )				ENS_procprops ( A, 7 )
594
#define ENC_var_callees( A )			ENS_procprops ( A, 8 )
595
#define ENC_var_callers( A )			ENS_procprops ( A, 9 )
596
 
597
#define ENS_rounding_mode( A, B )		ENC_BITS ( A, 3, B )
598
#define ENX_rounding_mode( A, B )		ENC_EXTN ( A, 3, B )
599
#define ENC_rounding_mode_apply_token( A )	ENS_rounding_mode ( A, 1 )
600
#define ENC_rounding_mode_cond( A )		ENS_rounding_mode ( A, 2 )
601
#define ENC_round_as_state( A )			ENS_rounding_mode ( A, 3 )
602
#define ENC_to_nearest( A )			ENS_rounding_mode ( A, 4 )
603
#define ENC_toward_larger( A )			ENS_rounding_mode ( A, 5 )
604
#define ENC_toward_smaller( A )			ENS_rounding_mode ( A, 6 )
605
#define ENC_toward_zero( A )			ENS_rounding_mode ( A, 7 )
606
 
607
#define ENS_shape( A, B )			ENC_BITS ( A, 4, B )
608
#define ENX_shape( A, B )			ENC_EXTN ( A, 4, B )
609
#define ENC_shape_apply_token( A )		ENS_shape ( A, 1 )
610
#define ENC_shape_cond( A )			ENS_shape ( A, 2 )
611
#define ENC_bitfield( A )			ENS_shape ( A, 3 )
612
#define ENC_bottom( A )				ENS_shape ( A, 4 )
613
#define ENC_compound( A )			ENS_shape ( A, 5 )
614
#define ENC_floating( A )			ENS_shape ( A, 6 )
615
#define ENC_integer( A )			ENS_shape ( A, 7 )
616
#define ENC_nof( A )				ENS_shape ( A, 8 )
617
#define ENC_offset( A )				ENS_shape ( A, 9 )
618
#define ENC_pointer( A )			ENS_shape ( A, 10 )
619
#define ENC_proc( A )				ENS_shape ( A, 11 )
620
#define ENC_top( A )				ENS_shape ( A, 12 )
621
 
622
#define ENS_signed_nat( A, B )			ENC_BITS ( A, 3, B )
623
#define ENX_signed_nat( A, B )			ENC_EXTN ( A, 3, B )
624
#define ENC_signed_nat_apply_token( A )		ENS_signed_nat ( A, 1 )
625
#define ENC_signed_nat_cond( A )		ENS_signed_nat ( A, 2 )
626
#define ENC_computed_signed_nat( A )		ENS_signed_nat ( A, 3 )
627
#define ENC_make_signed_nat( A )		ENS_signed_nat ( A, 4 )
628
#define ENC_snat_from_nat( A )			ENS_signed_nat ( A, 5 )
629
 
630
#define ENS_sortname( A, B )			ENC_BITS ( A, 5, B )
631
#define ENX_sortname( A, B )			ENC_EXTN ( A, 5, B )
632
#define ENC_access( A )				ENS_sortname ( A, 1 )
633
#define ENC_al_tag( A )				ENS_sortname ( A, 2 )
634
#define ENC_alignment_sort( A )			ENS_sortname ( A, 3 )
635
#define ENC_bitfield_variety( A )		ENS_sortname ( A, 4 )
636
#define ENC_bool( A )				ENS_sortname ( A, 5 )
637
#define ENC_error_treatment( A )		ENS_sortname ( A, 6 )
638
#define ENC_exp( A )				ENS_sortname ( A, 7 )
639
#define ENC_floating_variety( A )		ENS_sortname ( A, 8 )
640
#define ENC_foreign_sort( A )			ENS_sortname ( A, 9 )
641
#define ENC_label( A )				ENS_sortname ( A, 10 )
642
#define ENC_nat( A )				ENS_sortname ( A, 11 )
643
#define ENC_ntest( A )				ENS_sortname ( A, 12 )
644
#define ENC_procprops( A )			ENS_sortname ( A, 13 )
645
#define ENC_rounding_mode( A )			ENS_sortname ( A, 14 )
646
#define ENC_shape( A )				ENS_sortname ( A, 15 )
647
#define ENC_signed_nat( A )			ENS_sortname ( A, 16 )
648
#define ENC_string( A )				ENS_sortname ( A, 17 )
649
#define ENC_tag( A )				ENS_sortname ( A, 18 )
650
#define ENC_transfer_mode( A )			ENS_sortname ( A, 19 )
651
#define ENC_token( A )				ENS_sortname ( A, 20 )
652
#define ENC_variety( A )			ENS_sortname ( A, 21 )
653
 
654
#define ENS_sourcemark( A, B )			ENC_BITS ( A, 1, B )
655
#define ENX_sourcemark( A, B )			ENC_EXTN ( A, 1, B )
656
#define ENC_make_sourcemark( A )		ENS_sourcemark ( A, 1 )
657
 
658
#define ENS_string( A, B )			ENC_BITS ( A, 3, B )
659
#define ENX_string( A, B )			ENC_EXTN ( A, 3, B )
660
#define ENC_string_apply_token( A )		ENS_string ( A, 1 )
661
#define ENC_string_cond( A )			ENS_string ( A, 2 )
662
#define ENC_concat_string( A )			ENS_string ( A, 3 )
663
#define ENC_make_string( A )			ENS_string ( A, 4 )
664
 
665
#define ENS_tag( A, B )				ENC_BITS ( A, 1, B )
666
#define ENX_tag( A, B )				ENC_EXTN ( A, 1, B )
667
#define ENC_tag_apply_token( A )		ENX_tag ( A, 2 )
668
#define ENC_make_tag( A, B )			{ ENS_tag ( A, 1 ) ; ENC_INT ( A, B ) ; }
669
 
670
#define ENS_tagdec( A, B )			ENC_BITS ( A, 2, B )
671
#define ENX_tagdec( A, B )			ENC_EXTN ( A, 2, B )
672
#define ENC_make_id_tagdec( A )			ENS_tagdec ( A, 1 )
673
#define ENC_make_var_tagdec( A )		ENS_tagdec ( A, 2 )
674
#define ENC_common_tagdec( A )			ENS_tagdec ( A, 3 )
675
 
676
#define ENS_tagdef( A, B )			ENC_BITS ( A, 2, B )
677
#define ENX_tagdef( A, B )			ENC_EXTN ( A, 2, B )
678
#define ENC_make_id_tagdef( A )			ENS_tagdef ( A, 1 )
679
#define ENC_make_var_tagdef( A )		ENS_tagdef ( A, 2 )
680
#define ENC_common_tagdef( A )			ENS_tagdef ( A, 3 )
681
 
682
#define ENS_tokdec( A, B )			ENC_BITS ( A, 1, B )
683
#define ENX_tokdec( A, B )			ENC_EXTN ( A, 1, B )
684
#define ENC_make_tokdec( A )			ENS_tokdec ( A, 1 )
685
 
686
#define ENS_tokdef( A, B )			ENC_BITS ( A, 1, B )
687
#define ENX_tokdef( A, B )			ENC_EXTN ( A, 1, B )
688
#define ENC_make_tokdef( A )			ENS_tokdef ( A, 1 )
689
 
690
#define ENS_token( A, B )			ENC_BITS ( A, 2, B )
691
#define ENX_token( A, B )			ENC_EXTN ( A, 2, B )
692
#define ENC_token_apply_token( A )		ENS_token ( A, 1 )
693
#define ENC_make_tok( A, B )			{ ENS_token ( A, 2 ) ; ENC_INT ( A, B ) ; }
694
#define ENC_use_tokdef( A )			ENS_token ( A, 3 )
695
 
696
#define ENS_token_defn( A, B )			ENC_BITS ( A, 1, B )
697
#define ENX_token_defn( A, B )			ENC_EXTN ( A, 1, B )
698
#define ENC_token_definition( A )		ENS_token_defn ( A, 1 )
699
 
700
#define ENS_transfer_mode( A, B )		ENC_BITS ( A, 3, B )
701
#define ENX_transfer_mode( A, B )		ENC_EXTN ( A, 3, B )
702
#define ENC_transfer_mode_apply_token( A )	ENS_transfer_mode ( A, 1 )
703
#define ENC_transfer_mode_cond( A )		ENS_transfer_mode ( A, 2 )
704
#define ENC_add_modes( A )			ENS_transfer_mode ( A, 3 )
705
#define ENC_overlap( A )			ENS_transfer_mode ( A, 4 )
706
#define ENC_standard_transfer_mode( A )		ENS_transfer_mode ( A, 5 )
707
#define ENC_trap_on_nil( A )			ENS_transfer_mode ( A, 6 )
708
#define ENC_volatile( A )			ENS_transfer_mode ( A, 7 )
709
#define ENC_complete( A )			ENX_transfer_mode ( A, 8 )
710
 
711
#define ENS_variety( A, B )			ENC_BITS ( A, 2, B )
712
#define ENX_variety( A, B )			ENC_EXTN ( A, 2, B )
713
#define ENC_var_apply_token( A )		ENS_variety ( A, 1 )
714
#define ENC_var_cond( A )			ENS_variety ( A, 2 )
715
#define ENC_var_limits( A )			ENS_variety ( A, 3 )
716
#define ENC_var_width( A )			ENX_variety ( A, 4 )
717
 
718
#define ENS_version( A, B )			ENC_BITS ( A, 1, B )
719
#define ENX_version( A, B )			ENC_EXTN ( A, 1, B )
720
#define ENC_make_version( A )			ENS_version ( A, 1 )
721
#define ENC_user_info( A )			ENX_version ( A, 2 )