Adjust linker tests that are sensitive to --rosegment
[binutils-gdb.git] / ld / ldlex.h
blobdefe3fcbbb990e017378362f15ed617d2277f276
1 /* ldlex.h -
2 Copyright (C) 1991-2024 Free Software Foundation, Inc.
4 This file is part of the GNU Binutils.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
19 MA 02110-1301, USA. */
21 #ifndef LDLEX_H
22 #define LDLEX_H
24 #include <stdio.h>
26 /* Codes used for the long options with no short synonyms. 150 isn't
27 special; it's just an arbitrary non-ASCII char value. */
28 enum option_values
30 OPTION_ASSERT = 150,
31 OPTION_CALL_SHARED,
32 OPTION_CREF,
33 OPTION_DEFSYM,
34 OPTION_DEMANGLE,
35 OPTION_DYNAMIC_LINKER,
36 OPTION_NO_DYNAMIC_LINKER,
37 OPTION_SYSROOT,
38 OPTION_OUT_IMPLIB,
39 OPTION_EB,
40 OPTION_EL,
41 OPTION_EMBEDDED_RELOCS,
42 OPTION_EXPORT_DYNAMIC,
43 OPTION_NO_EXPORT_DYNAMIC,
44 OPTION_HELP,
45 OPTION_IGNORE,
46 OPTION_MAP,
47 OPTION_NO_DEMANGLE,
48 OPTION_NO_KEEP_MEMORY,
49 OPTION_NO_WARN_MISMATCH,
50 OPTION_NO_WARN_SEARCH_MISMATCH,
51 OPTION_NOINHIBIT_EXEC,
52 OPTION_NON_SHARED,
53 OPTION_NO_WHOLE_ARCHIVE,
54 OPTION_OFORMAT,
55 OPTION_RELAX,
56 OPTION_NO_RELAX,
57 OPTION_NO_SYMBOLIC,
58 OPTION_RETAIN_SYMBOLS_FILE,
59 OPTION_RPATH,
60 OPTION_RPATH_LINK,
61 OPTION_SHARED,
62 OPTION_SONAME,
63 OPTION_SORT_COMMON,
64 OPTION_SORT_SECTION,
65 OPTION_SECTION_ORDERING_FILE,
66 OPTION_STATS,
67 OPTION_SYMBOLIC,
68 OPTION_SYMBOLIC_FUNCTIONS,
69 OPTION_TASK_LINK,
70 OPTION_TBSS,
71 OPTION_TDATA,
72 OPTION_TTEXT,
73 OPTION_TTEXT_SEGMENT,
74 OPTION_TRODATA_SEGMENT,
75 OPTION_TLDATA_SEGMENT,
76 OPTION_TRADITIONAL_FORMAT,
77 OPTION_UR,
78 OPTION_VERBOSE,
79 OPTION_VERSION,
80 OPTION_VERSION_SCRIPT,
81 OPTION_VERSION_EXPORTS_SECTION,
82 OPTION_DYNAMIC_LIST,
83 OPTION_DYNAMIC_LIST_CPP_NEW,
84 OPTION_DYNAMIC_LIST_CPP_TYPEINFO,
85 OPTION_DYNAMIC_LIST_DATA,
86 OPTION_EXPORT_DYNAMIC_SYMBOL,
87 OPTION_EXPORT_DYNAMIC_SYMBOL_LIST,
88 OPTION_WARN_COMMON,
89 OPTION_WARN_CONSTRUCTORS,
90 OPTION_WARN_FATAL,
91 OPTION_NO_WARN_FATAL,
92 OPTION_NO_WARNINGS,
93 OPTION_WARN_MULTIPLE_GP,
94 OPTION_WARN_ONCE,
95 OPTION_WARN_SECTION_ALIGN,
96 OPTION_SPLIT_BY_RELOC,
97 OPTION_SPLIT_BY_FILE ,
98 OPTION_WHOLE_ARCHIVE,
99 OPTION_ADD_DT_NEEDED_FOR_DYNAMIC,
100 OPTION_NO_ADD_DT_NEEDED_FOR_DYNAMIC,
101 OPTION_ADD_DT_NEEDED_FOR_REGULAR,
102 OPTION_NO_ADD_DT_NEEDED_FOR_REGULAR,
103 OPTION_WRAP,
104 OPTION_FORCE_EXE_SUFFIX,
105 OPTION_GC_SECTIONS,
106 OPTION_NO_GC_SECTIONS,
107 OPTION_PRINT_GC_SECTIONS,
108 OPTION_NO_PRINT_GC_SECTIONS,
109 OPTION_GC_KEEP_EXPORTED,
110 OPTION_HASH_SIZE,
111 OPTION_CHECK_SECTIONS,
112 OPTION_NO_CHECK_SECTIONS,
113 OPTION_NO_UNDEFINED,
114 OPTION_INIT,
115 OPTION_FINI,
116 OPTION_SECTION_START,
117 OPTION_UNIQUE,
118 OPTION_TARGET_HELP,
119 OPTION_ALLOW_SHLIB_UNDEFINED,
120 OPTION_NO_ALLOW_SHLIB_UNDEFINED,
121 OPTION_ALLOW_MULTIPLE_DEFINITION,
122 #if SUPPORT_ERROR_HANDLING_SCRIPT
123 OPTION_ERROR_HANDLING_SCRIPT,
124 #endif
125 OPTION_UNDEFINED_VERSION,
126 OPTION_NO_UNDEFINED_VERSION,
127 OPTION_DEFAULT_SYMVER,
128 OPTION_DEFAULT_IMPORTED_SYMVER,
129 OPTION_DISCARD_NONE,
130 OPTION_SPARE_DYNAMIC_TAGS,
131 OPTION_NO_DEFINE_COMMON,
132 OPTION_NOSTDLIB,
133 OPTION_NO_OMAGIC,
134 OPTION_STRIP_DISCARDED,
135 OPTION_NO_STRIP_DISCARDED,
136 OPTION_ACCEPT_UNKNOWN_INPUT_ARCH,
137 OPTION_NO_ACCEPT_UNKNOWN_INPUT_ARCH,
138 OPTION_PIE,
139 OPTION_NO_PIE,
140 OPTION_UNRESOLVED_SYMBOLS,
141 OPTION_WARN_UNRESOLVED_SYMBOLS,
142 OPTION_ERROR_UNRESOLVED_SYMBOLS,
143 OPTION_WARN_TEXTREL,
144 OPTION_WARN_ALTERNATE_EM,
145 OPTION_REDUCE_MEMORY_OVERHEADS,
146 OPTION_MAX_CACHE_SIZE,
147 #if BFD_SUPPORTS_PLUGINS
148 OPTION_PLUGIN,
149 OPTION_PLUGIN_OPT,
150 OPTION_PLUGIN_SAVE_TEMPS,
151 #endif /* BFD_SUPPORTS_PLUGINS */
152 OPTION_DEFAULT_SCRIPT,
153 OPTION_PRINT_OUTPUT_FORMAT,
154 OPTION_PRINT_SYSROOT,
155 OPTION_IGNORE_UNRESOLVED_SYMBOL,
156 OPTION_PUSH_STATE,
157 OPTION_POP_STATE,
158 OPTION_DISABLE_MULTIPLE_DEFS_ABS,
159 OPTION_PRINT_MEMORY_USAGE,
160 OPTION_REQUIRE_DEFINED_SYMBOL,
161 OPTION_ORPHAN_HANDLING,
162 OPTION_FORCE_GROUP_ALLOCATION,
163 OPTION_PRINT_MAP_DISCARDED,
164 OPTION_NO_PRINT_MAP_DISCARDED,
165 OPTION_PRINT_MAP_LOCALS,
166 OPTION_NO_PRINT_MAP_LOCALS,
167 OPTION_NON_CONTIGUOUS_REGIONS,
168 OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS,
169 OPTION_DEPENDENCY_FILE,
170 OPTION_CTF_VARIABLES,
171 OPTION_NO_CTF_VARIABLES,
172 OPTION_CTF_SHARE_TYPES,
173 OPTION_ERROR_EXECSTACK,
174 OPTION_NO_ERROR_EXECSTACK,
175 OPTION_WARN_EXECSTACK_OBJECTS,
176 OPTION_WARN_EXECSTACK,
177 OPTION_NO_WARN_EXECSTACK,
178 OPTION_WARN_RWX_SEGMENTS,
179 OPTION_NO_WARN_RWX_SEGMENTS,
180 OPTION_ERROR_RWX_SEGMENTS,
181 OPTION_NO_ERROR_RWX_SEGMENTS,
182 OPTION_ENABLE_LINKER_VERSION,
183 OPTION_DISABLE_LINKER_VERSION,
184 OPTION_REMAP_INPUTS,
185 OPTION_REMAP_INPUTS_FILE,
186 /* Used by emultempl/elf.em, emultempl/pe.em and emultempl/pep.em. */
187 OPTION_BUILD_ID,
188 OPTION_EXCLUDE_LIBS,
189 /* Used by emulparams/elf32mcore.sh, emultempl/beos.em, emultempl/pe.em
190 and emultempl/pep.em. */
191 OPTION_BASE_FILE,
192 /* Used by emultempl/ppc32elf.em and emultempl/ppc64elf.em. */
193 OPTION_NO_INLINE_OPT,
194 OPTION_NO_PLT_ALIGN,
195 OPTION_NO_STUBSYMS,
196 OPTION_NO_TLS_GET_ADDR_OPT,
197 OPTION_NO_TLS_OPT,
198 OPTION_PLT_ALIGN,
199 OPTION_STUBSYMS,
200 /* Used by emultempl/armelf.em and emultempl/tic6xdsbt.em. */
201 OPTION_NO_MERGE_EXIDX_ENTRIES,
202 /* Used by emultempl/aarch64elf.em and emultempl/armelf.em. */
203 OPTION_PIC_VENEER,
204 OPTION_NO_ENUM_SIZE_WARNING,
205 OPTION_NO_WCHAR_SIZE_WARNING,
206 /* Used by emultempl/armelf.em and emultempl/pe.em. */
207 OPTION_THUMB_ENTRY,
208 /* Used by emultempl/beos.em, emultempl/nto.em, emultempl/pe.em and
209 emultempl/pep.em. */
210 OPTION_STACK,
211 /* Used by emultempl/aarch64elf.em, emultempl/armelf.em,
212 emultempl/cskyelf.em, emultempl/hppaelf.em, emultempl/metagelf.em
213 and emultempl/ppc64elf.em. */
214 OPTION_STUBGROUP_SIZE,
215 /* Used by emulparams/plt_unwind.sh. */
216 OPTION_LD_GENERATED_UNWIND_INFO,
217 OPTION_NO_LD_GENERATED_UNWIND_INFO,
218 /* Used by emultempl/aarch64elf.em. */
219 OPTION_FIX_ERRATUM_835769,
220 OPTION_FIX_ERRATUM_843419,
221 OPTION_NO_APPLY_DYNAMIC_RELOCS,
222 /* Used by emultempl/aix.em. */
223 OPTION_AUTOIMP,
224 OPTION_ERNOTOK,
225 OPTION_EROK,
226 OPTION_EXPALL,
227 OPTION_EXPFULL,
228 OPTION_EXPORT,
229 OPTION_IMPORT,
230 OPTION_INITFINI,
231 OPTION_LOADMAP,
232 OPTION_MAXDATA,
233 OPTION_MAXSTACK,
234 OPTION_MODTYPE,
235 OPTION_NOAUTOIMP,
236 OPTION_NOEXPALL,
237 OPTION_NOEXPFULL,
238 OPTION_NOSTRCMPCT,
239 OPTION_PD,
240 OPTION_PT,
241 OPTION_STRCMPCT,
242 OPTION_UNIX,
243 OPTION_32,
244 OPTION_64,
245 OPTION_LIBPATH,
246 OPTION_NOLIBPATH,
247 /* Used by emultempl/alphaelf.em. */
248 OPTION_TASO,
249 OPTION_SECUREPLT,
250 OPTION_NO_SECUREPLT,
251 /* Used by emultempl/armelf.em. */
252 OPTION_BE8,
253 OPTION_TARGET1_REL,
254 OPTION_TARGET1_ABS,
255 OPTION_TARGET2,
256 OPTION_FIX_V4BX,
257 OPTION_USE_BLX,
258 OPTION_VFP11_DENORM_FIX,
259 OPTION_FIX_V4BX_INTERWORKING,
260 OPTION_FIX_CORTEX_A8,
261 OPTION_NO_FIX_CORTEX_A8,
262 OPTION_FIX_ARM1176,
263 OPTION_NO_FIX_ARM1176,
264 OPTION_LONG_PLT,
265 OPTION_STM32L4XX_FIX,
266 OPTION_CMSE_IMPLIB,
267 OPTION_IN_IMPLIB,
268 /* Used by emultempl/avrelf.em. */
269 OPTION_NO_CALL_RET_REPLACEMENT,
270 OPTION_PMEM_WRAP_AROUND,
271 OPTION_NO_STUBS,
272 OPTION_DEBUG_STUBS,
273 OPTION_DEBUG_RELAX,
274 /* Used by emultempl/bfin.em. */
275 OPTION_CODE_IN_L1,
276 OPTION_DATA_IN_L1,
277 /* Used by emultempl/cskyelf.em. */
278 OPTION_BRANCH_STUB,
279 OPTION_NO_BRANCH_STUB,
280 /* Used by emultempl/elf.em. */
281 OPTION_DISABLE_NEW_DTAGS,
282 OPTION_ENABLE_NEW_DTAGS,
283 OPTION_GROUP,
284 OPTION_EH_FRAME_HDR,
285 OPTION_NO_EH_FRAME_HDR,
286 OPTION_HASH_STYLE,
287 OPTION_PACKAGE_METADATA,
288 OPTION_AUDIT,
289 OPTION_COMPRESS_DEBUG,
290 OPTION_ROSEGMENT,
291 OPTION_NO_ROSEGMENT,
292 /* Used by emultempl/hppaelf.em. */
293 OPTION_MULTI_SUBSPACE,
294 /* Used by emultempl/ia64elf.em. */
295 OPTION_ITANIUM,
296 /* Used by emultempl/m68hc1xelf.em. */
297 OPTION_NO_TRAMPOLINE,
298 OPTION_BANK_WINDOW,
299 /* Used by emultempl/m68kelf.em. */
300 OPTION_GOT,
301 /* Used by emultempl/mipself.em. */
302 OPTION_INSN32,
303 OPTION_NO_INSN32,
304 OPTION_IGNORE_BRANCH_ISA,
305 OPTION_NO_IGNORE_BRANCH_ISA,
306 OPTION_COMPACT_BRANCHES,
307 OPTION_NO_COMPACT_BRANCHES,
308 /* Used by emultempl/msp430.em. */
309 OPTION_CODE_REGION,
310 OPTION_DATA_REGION,
311 OPTION_DISABLE_TRANS,
312 /* Used by emultempl/nds32elf.em. */
313 OPTION_BASELINE,
314 OPTION_ELIM_GC_RELOCS,
315 OPTION_FP_AS_GP,
316 OPTION_NO_FP_AS_GP,
317 OPTION_REDUCE_FP_UPDATE,
318 OPTION_NO_REDUCE_FP_UPDATE,
319 OPTION_EXPORT_SYMBOLS,
320 OPTION_HYPER_RELAX,
321 OPTION_TLSDESC_TRAMPOLINE,
322 OPTION_NO_TLSDESC_TRAMPOLINE,
323 /* Used by emultempl/nto.em. */
324 OPTION_LAZY_STACK,
325 /* Used by emultempl/pe.em, emultempl/pep.em and emultempl/beos.em. */
326 OPTION_DLL,
327 OPTION_FILE_ALIGNMENT,
328 OPTION_IMAGE_BASE,
329 OPTION_MAJOR_IMAGE_VERSION,
330 OPTION_MAJOR_OS_VERSION,
331 OPTION_MAJOR_SUBSYSTEM_VERSION,
332 OPTION_MINOR_IMAGE_VERSION,
333 OPTION_MINOR_OS_VERSION,
334 OPTION_MINOR_SUBSYSTEM_VERSION,
335 OPTION_SECTION_ALIGNMENT,
336 OPTION_SUBSYSTEM,
337 OPTION_HEAP,
338 OPTION_SUPPORT_OLD_CODE,
339 OPTION_OUT_DEF,
340 OPTION_EXPORT_ALL,
341 OPTION_EXCLUDE_SYMBOLS,
342 OPTION_EXCLUDE_ALL_SYMBOLS,
343 OPTION_KILL_ATS,
344 OPTION_STDCALL_ALIASES,
345 OPTION_ENABLE_STDCALL_FIXUP,
346 OPTION_DISABLE_STDCALL_FIXUP,
347 OPTION_WARN_DUPLICATE_EXPORTS,
348 OPTION_IMP_COMPAT,
349 OPTION_ENABLE_AUTO_IMAGE_BASE,
350 OPTION_DISABLE_AUTO_IMAGE_BASE,
351 OPTION_DLL_SEARCH_PREFIX,
352 OPTION_NO_DEFAULT_EXCLUDES,
353 OPTION_DLL_ENABLE_AUTO_IMPORT,
354 OPTION_DLL_DISABLE_AUTO_IMPORT,
355 OPTION_ENABLE_EXTRA_PE_DEBUG,
356 OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC,
357 OPTION_DLL_DISABLE_RUNTIME_PSEUDO_RELOC,
358 OPTION_LARGE_ADDRESS_AWARE,
359 OPTION_DISABLE_LARGE_ADDRESS_AWARE,
360 OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V1,
361 OPTION_DLL_ENABLE_RUNTIME_PSEUDO_RELOC_V2,
362 OPTION_EXCLUDE_MODULES_FOR_IMPLIB,
363 OPTION_USE_NUL_PREFIXED_IMPORT_TABLES,
364 OPTION_NO_LEADING_UNDERSCORE,
365 OPTION_LEADING_UNDERSCORE,
366 OPTION_ENABLE_LONG_SECTION_NAMES,
367 OPTION_DISABLE_LONG_SECTION_NAMES,
368 /* DLLCharacteristics flags. */
369 OPTION_DYNAMIC_BASE,
370 OPTION_FORCE_INTEGRITY,
371 OPTION_NX_COMPAT,
372 OPTION_NO_ISOLATION,
373 OPTION_NO_SEH,
374 OPTION_NO_BIND,
375 OPTION_WDM_DRIVER,
376 OPTION_TERMINAL_SERVER_AWARE,
377 /* Determinism. */
378 OPTION_INSERT_TIMESTAMP,
379 OPTION_NO_INSERT_TIMESTAMP,
380 OPTION_PDB,
381 OPTION_ENABLE_RELOC_SECTION,
382 OPTION_DISABLE_RELOC_SECTION,
383 /* DLL Characteristics flags. */
384 OPTION_DISABLE_DYNAMIC_BASE,
385 OPTION_DISABLE_FORCE_INTEGRITY,
386 OPTION_DISABLE_NX_COMPAT,
387 OPTION_DISABLE_NO_ISOLATION,
388 OPTION_DISABLE_NO_SEH,
389 OPTION_DISABLE_NO_BIND,
390 OPTION_DISABLE_WDM_DRIVER,
391 OPTION_DISABLE_TERMINAL_SERVER_AWARE,
392 /* Used by emultempl/pep.em. */
393 OPTION_DISABLE_HIGH_ENTROPY_VA,
394 OPTION_HIGH_ENTROPY_VA,
395 /* Used by emultempl/ppc32elf.em. */
396 OPTION_NEW_PLT,
397 OPTION_OLD_PLT,
398 OPTION_OLD_GOT,
399 OPTION_PPC476_WORKAROUND,
400 OPTION_NO_PPC476_WORKAROUND,
401 OPTION_NO_PICFIXUP,
402 OPTION_VLE_RELOC_FIXUP,
403 /* Used by emultempl/ppc64elf.em. */
404 OPTION_PLT_STATIC_CHAIN,
405 OPTION_NO_PLT_STATIC_CHAIN,
406 OPTION_PLT_THREAD_SAFE,
407 OPTION_NO_PLT_THREAD_SAFE,
408 OPTION_PLT_LOCALENTRY,
409 OPTION_NO_PLT_LOCALENTRY,
410 OPTION_POWER10_STUBS,
411 OPTION_NO_POWER10_STUBS,
412 OPTION_NO_PCREL_OPT,
413 OPTION_SAVRES,
414 OPTION_NO_SAVRES,
415 OPTION_DOTSYMS,
416 OPTION_NO_DOTSYMS,
417 OPTION_TLS_GET_ADDR_OPT,
418 OPTION_TLS_GET_ADDR_REGSAVE,
419 OPTION_NO_TLS_GET_ADDR_REGSAVE,
420 OPTION_NO_OPD_OPT,
421 OPTION_NO_TOC_OPT,
422 OPTION_NO_MULTI_TOC,
423 OPTION_NO_TOC_SORT,
424 OPTION_NON_OVERLAPPING_OPD,
425 /* Used by emultempl/riscvelf.em. */
426 OPTION_RELAX_GP,
427 OPTION_NO_RELAX_GP,
428 OPTION_CHECK_ULEB128,
429 OPTION_NO_CHECK_ULEB128,
430 /* Used by emultempl/rxelf.em. */
431 OPTION_NO_FLAG_MISMATCH_WARNINGS,
432 OPTION_IGNORE_LMA,
433 OPTION_NO_IGNORE_LMA,
434 OPTION_FLAG_MISMATCH_WARNINGS,
435 /* Used by emultempl/s390.em. */
436 OPTION_PGSTE,
437 /* Used by emultempl/spuelf.em. */
438 OPTION_SPU_PLUGIN,
439 OPTION_SPU_NO_OVERLAYS,
440 OPTION_SPU_COMPACT_STUBS,
441 OPTION_SPU_STUB_SYMS,
442 OPTION_SPU_NON_OVERLAY_STUBS,
443 OPTION_SPU_LOCAL_STORE,
444 OPTION_SPU_STACK_ANALYSIS,
445 OPTION_SPU_STACK_SYMS,
446 OPTION_SPU_AUTO_OVERLAY,
447 OPTION_SPU_AUTO_RELINK,
448 OPTION_SPU_OVERLAY_RODATA,
449 OPTION_SPU_SOFT_ICACHE,
450 OPTION_SPU_LINE_SIZE,
451 OPTION_SPU_NUM_LINES,
452 OPTION_SPU_LRLIVE,
453 OPTION_SPU_NON_IA_TEXT,
454 OPTION_SPU_FIXED_SPACE,
455 OPTION_SPU_RESERVED_SPACE,
456 OPTION_SPU_EXTRA_STACK,
457 OPTION_SPU_NO_AUTO_OVERLAY,
458 OPTION_SPU_EMIT_FIXUPS,
459 /* Used by emultempl/tic6xdsbt.em. */
460 OPTION_DSBT_INDEX,
461 OPTION_DSBT_SIZE,
462 /* Used by emultempl/ticoff.em. */
463 OPTION_COFF_FORMAT,
464 /* Used by emultempl/vms.em. */
465 OPTION_IDENTIFICATION,
466 /* Used by emultempl/vxworks.em. */
467 OPTION_FORCE_DYNAMIC,
468 /* Used by emultempl/xtensaelf.em. */
469 OPTION_OPT_SIZEOPT,
470 OPTION_LITERAL_MOVEMENT,
471 OPTION_NO_LITERAL_MOVEMENT,
472 OPTION_ABI_WINDOWED,
473 OPTION_ABI_CALL0,
476 /* The initial parser states. */
477 typedef enum input_enum
479 input_selected, /* We've set the initial state. */
480 input_script,
481 input_mri_script,
482 input_version_script,
483 input_section_ordering_script,
484 input_dynamic_list,
485 input_defsym
486 } input_type;
488 extern input_type parser_input;
490 extern unsigned int lineno;
491 extern const char *lex_string;
493 /* In ldlex.l. */
494 extern int yylex (void);
495 extern void lex_push_file (FILE *, const char *, unsigned int);
496 extern void lex_redirect (const char *, const char *, unsigned int);
497 extern void ldlex_script (void);
498 extern void ldlex_inputlist (void);
499 extern void ldlex_mri_script (void);
500 extern void ldlex_version_script (void);
501 extern void ldlex_version_file (void);
502 extern void ldlex_expression (void);
503 extern void ldlex_wild (void);
504 extern void ldlex_popstate (void);
505 extern void ldlex_backup (void);
506 extern const char* ldlex_filename (void);
508 /* In lexsup.c. */
509 extern int lex_input (void);
510 extern void lex_unput (int);
511 extern void parse_args (unsigned, char **);
513 #endif