This is flex.info, produced by makeinfo version 6.0 from flex.texi. The flex manual is placed under the same licensing conditions as the rest of flex: Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2012 The Flex Project. Copyright (C) 1990, 1997 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by Vern Paxson. The United States Government has rights in this work pursuant to contract no. DE-AC03-76SF00098 between the United States Department of Energy and the University of California. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. INFO-DIR-SECTION Programming START-INFO-DIR-ENTRY * flex: (flex). Fast lexical analyzer generator (lex replacement). END-INFO-DIR-ENTRY  Indirect: flex.info-1: 1622 flex.info-2: 319115  Tag Table: (Indirect) Node: Top1622 Node: Copyright9420 Node: Reporting Bugs10939 Node: Introduction11195 Node: Simple Examples12024 Node: Format15312 Node: Definitions Section15767 Ref: Definitions Section-Footnote-118025 Node: Rules Section18093 Node: User Code Section19251 Node: Comments in the Input19689 Node: Patterns21059 Ref: case and character ranges27891 Node: Matching31894 Node: Actions35179 Node: Generated Scanner44141 Node: Start Conditions49160 Node: Multiple Input Buffers59702 Ref: Scanning Strings66243 Node: EOF67872 Node: Misc Macros69458 Node: User Values72312 Node: Yacc74637 Node: Scanner Options75532 Node: Options for Specifying Filenames78321 Ref: option-header78547 Ref: option-outfile79261 Ref: option-stdout79586 Node: Options Affecting Scanner Behavior80569 Ref: option-case-insensitive80810 Ref: option-lex-compat81243 Ref: option-batch81775 Ref: option-interactive82294 Ref: option-7bit83648 Ref: option-8bit84952 Ref: option-default85364 Ref: option-always-interactive85428 Ref: option-posix86032 Ref: option-stack87179 Ref: option-stdinit87287 Ref: option-yylineno87766 Ref: option-yywrap88209 Node: Code-Level And API Options88476 Ref: option-ansi-definitions88703 Ref: option-ansi-prototypes88951 Ref: option-bison-bridge89199 Ref: option-bison-locations89540 Ref: option-noline89800 Ref: option-reentrant90314 Ref: option-c++90926 Ref: option-array91052 Ref: option-pointer91150 Ref: option-prefix91277 Ref: option-main92805 Ref: option-nounistd92989 Ref: option-yyclass93500 Node: Options for Scanner Speed and Size93984 Ref: option-align94534 Ref: option-ecs95036 Ref: option-meta-ecs96075 Ref: option-read96563 Ref: option-full98446 Ref: option-fast98641 Node: Debugging Options99565 Ref: option-backup99752 Ref: option-debug100297 Ref: option-perf-report101019 Ref: option-nodefault101645 Ref: option-trace101963 Ref: option-nowarn102254 Ref: option-verbose102322 Ref: option-warn102751 Node: Miscellaneous Options102970 Node: Performance103426 Node: Cxx113673 Node: Reentrant121765 Node: Reentrant Uses122499 Node: Reentrant Overview124061 Node: Reentrant Example124861 Node: Reentrant Detail125634 Node: Specify Reentrant126138 Node: Extra Reentrant Argument126788 Node: Global Replacement128040 Node: Init and Destroy Functions129275 Node: Accessor Methods131796 Node: Extra Data133143 Node: About yyscan_t135410 Node: Reentrant Functions135807 Ref: bison-functions137291 Node: Lex and Posix138030 Node: Memory Management145377 Ref: memory-management145523 Node: The Default Memory Management145757 Ref: The Default Memory Management-Footnote-1149577 Node: Overriding The Default Memory Management149730 Ref: Overriding The Default Memory Management-Footnote-1152144 Node: A Note About yytext And Memory152308 Node: Serialized Tables153548 Ref: serialization153692 Node: Creating Serialized Tables154472 Node: Loading and Unloading Serialized Tables156087 Node: Tables File Format157860 Node: Diagnostics164885 Node: Limitations168294 Node: Bibliography170242 Node: FAQ170912 Node: When was flex born?176075 Node: How do I expand backslash-escape sequences in C-style quoted strings?176452 Node: Why do flex scanners call fileno if it is not ANSI compatible?177755 Node: Does flex support recursive pattern definitions?178552 Node: How do I skip huge chunks of input (tens of megabytes) while using flex?179399 Node: Flex is not matching my patterns in the same order that I defined them.179866 Node: My actions are executing out of order or sometimes not at all.181612 Node: How can I have multiple input sources feed into the same scanner at the same time?182385 Node: Can I build nested parsers that work with the same input file?184370 Node: How can I match text only at the end of a file?185377 Node: How can I make REJECT cascade across start condition boundaries?186181 Node: Why cant I use fast or full tables with interactive mode?187195 Node: How much faster is -F or -f than -C?188452 Node: If I have a simple grammar cant I just parse it with flex?188764 Node: Why doesn't yyrestart() set the start state back to INITIAL?189246 Node: How can I match C-style comments?189873 Node: The period isn't working the way I expected.190683 Node: Can I get the flex manual in another format?191928 Node: Does there exist a "faster" NDFA->DFA algorithm?192418 Node: How does flex compile the DFA so quickly?192928 Node: How can I use more than 8192 rules?193894 Node: How do I abandon a file in the middle of a scan and switch to a new file?195304 Node: How do I execute code only during initialization (only before the first scan)?195858 Node: How do I execute code at termination?196635 Node: Where else can I find help?196961 Node: Can I include comments in the "rules" section of the file?197335 Node: I get an error about undefined yywrap().197715 Node: How can I change the matching pattern at run time?198191 Node: How can I expand macros in the input?198553 Node: How can I build a two-pass scanner?199585 Node: How do I match any string not matched in the preceding rules?200503 Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf.201412 Node: Is there a way to make flex treat NULL like a regular character?202207 Node: Whenever flex can not match the input it says "flex scanner jammed".202727 Node: Why doesn't flex have non-greedy operators like perl does?203370 Node: Memory leak - 16386 bytes allocated by malloc.204723 Ref: faq-memory-leak205021 Node: How do I track the byte offset for lseek()?205992 Node: How do I use my own I/O classes in a C++ scanner?207501 Node: How do I skip as many chars as possible?208344 Node: deleteme00209419 Node: Are certain equivalent patterns faster than others?209859 Node: Is backing up a big deal?213277 Node: Can I fake multi-byte character support?215183 Node: deleteme01216624 Node: Can you discuss some flex internals?217733 Node: unput() messes up yy_at_bol219977 Node: The | operator is not doing what I want221079 Node: Why can't flex understand this variable trailing context pattern?222625 Node: The ^ operator isn't working223874 Node: Trailing context is getting confused with trailing optional patterns225109 Node: Is flex GNU or not?226352 Node: ERASEME53228025 Node: I need to scan if-then-else blocks and while loops228795 Node: ERASEME55229994 Node: ERASEME56231092 Node: ERASEME57232450 Node: Is there a repository for flex scanners?233448 Node: How can I conditionally compile or preprocess my flex input file?233764 Node: Where can I find grammars for lex and yacc?234237 Node: I get an end-of-buffer message for each character scanned.234584 Node: unnamed-faq-62235179 Node: unnamed-faq-63236197 Node: unnamed-faq-64237494 Node: unnamed-faq-65238460 Node: unnamed-faq-66239246 Node: unnamed-faq-67240361 Node: unnamed-faq-68241348 Node: unnamed-faq-69242490 Node: unnamed-faq-70243203 Node: unnamed-faq-71243964 Node: unnamed-faq-72245173 Node: unnamed-faq-73246216 Node: unnamed-faq-74247140 Node: unnamed-faq-75248085 Node: unnamed-faq-76249217 Node: unnamed-faq-77249923 Node: unnamed-faq-78250816 Node: unnamed-faq-79251814 Node: unnamed-faq-80253514 Node: unnamed-faq-81254832 Node: unnamed-faq-82257632 Node: unnamed-faq-83258589 Node: unnamed-faq-84260369 Node: unnamed-faq-85261472 Node: unnamed-faq-86262479 Node: unnamed-faq-87263417 Node: unnamed-faq-88264063 Node: unnamed-faq-90264894 Node: unnamed-faq-91266157 Node: unnamed-faq-92268585 Node: unnamed-faq-93269084 Node: unnamed-faq-94270011 Node: unnamed-faq-95271423 Node: unnamed-faq-96272941 Node: unnamed-faq-97273700 Node: unnamed-faq-98274367 Node: unnamed-faq-99275032 Node: unnamed-faq-100275961 Node: unnamed-faq-101276671 Node: What is the difference between YYLEX_PARAM and YY_DECL?277484 Node: Why do I get "conflicting types for yylex" error?278008 Node: How do I access the values set in a Flex action from within a Bison action?278538 Node: Appendices278967 Node: Makefiles and Flex279232 Ref: Makefiles and Flex-Footnote-1282434 Ref: Makefiles and Flex-Footnote-2282551 Ref: Makefiles and Flex-Footnote-3282738 Node: Bison Bridge282789 Ref: Bison Bridge-Footnote-1285456 Node: M4 Dependency285648 Ref: M4 Dependency-Footnote-1287062 Node: Common Patterns287198 Node: Numbers287521 Node: Identifiers288497 Node: Quoted Constructs289324 Node: Addresses290378 Node: Indices291690 Node: Concept Index291982 Node: Index of Functions and Macros319115 Node: Index of Variables324084 Node: Index of Data Types325750 Node: Index of Hooks326638 Node: Index of Scanner Options327206  End Tag Table