This is flex.info, produced by makeinfo version 6.1 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: 318748  Tag Table: (Indirect) Node: Top1622 Node: Copyright9419 Node: Reporting Bugs10938 Node: Introduction11194 Node: Simple Examples12023 Node: Format15309 Node: Definitions Section15764 Ref: Definitions Section-Footnote-118022 Node: Rules Section18090 Node: User Code Section19248 Node: Comments in the Input19686 Node: Patterns21056 Ref: case and character ranges27888 Node: Matching31891 Node: Actions35176 Node: Generated Scanner44138 Node: Start Conditions49141 Node: Multiple Input Buffers59683 Ref: Scanning Strings66224 Node: EOF67853 Node: Misc Macros69439 Node: User Values72293 Node: Yacc74618 Node: Scanner Options75513 Node: Options for Specifying Filenames78302 Ref: option-header78528 Ref: option-outfile79242 Ref: option-stdout79567 Node: Options Affecting Scanner Behavior80550 Ref: option-case-insensitive80791 Ref: option-lex-compat81224 Ref: option-batch81756 Ref: option-interactive82275 Ref: option-7bit83629 Ref: option-8bit84933 Ref: option-default85345 Ref: option-always-interactive85409 Ref: option-posix86013 Ref: option-stack87160 Ref: option-stdinit87268 Ref: option-yylineno87747 Ref: option-yywrap88190 Node: Code-Level And API Options88457 Ref: option-ansi-definitions88684 Ref: option-ansi-prototypes88759 Ref: option-bison-bridge88832 Ref: option-bison-locations89173 Ref: option-noline89433 Ref: option-reentrant89947 Ref: option-c++90559 Ref: option-array90685 Ref: option-pointer90783 Ref: option-prefix90910 Ref: option-main92438 Ref: option-nounistd92622 Ref: option-yyclass93133 Node: Options for Scanner Speed and Size93617 Ref: option-align94167 Ref: option-ecs94669 Ref: option-meta-ecs95708 Ref: option-read96196 Ref: option-full98079 Ref: option-fast98274 Node: Debugging Options99198 Ref: option-backup99385 Ref: option-debug99930 Ref: option-perf-report100652 Ref: option-nodefault101278 Ref: option-trace101596 Ref: option-nowarn101887 Ref: option-verbose101955 Ref: option-warn102384 Node: Miscellaneous Options102603 Node: Performance103059 Node: Cxx113306 Node: Reentrant121398 Node: Reentrant Uses122132 Node: Reentrant Overview123694 Node: Reentrant Example124494 Node: Reentrant Detail125267 Node: Specify Reentrant125771 Node: Extra Reentrant Argument126421 Node: Global Replacement127673 Node: Init and Destroy Functions128908 Node: Accessor Methods131429 Node: Extra Data132776 Node: About yyscan_t135043 Node: Reentrant Functions135440 Ref: bison-functions136924 Node: Lex and Posix137663 Node: Memory Management145010 Ref: memory-management145156 Node: The Default Memory Management145390 Ref: The Default Memory Management-Footnote-1149210 Node: Overriding The Default Memory Management149363 Ref: Overriding The Default Memory Management-Footnote-1151777 Node: A Note About yytext And Memory151941 Node: Serialized Tables153181 Ref: serialization153325 Node: Creating Serialized Tables154105 Node: Loading and Unloading Serialized Tables155720 Node: Tables File Format157493 Node: Diagnostics164518 Node: Limitations167927 Node: Bibliography169875 Node: FAQ170545 Node: When was flex born?175708 Node: How do I expand backslash-escape sequences in C-style quoted strings?176085 Node: Why do flex scanners call fileno if it is not ANSI compatible?177388 Node: Does flex support recursive pattern definitions?178185 Node: How do I skip huge chunks of input (tens of megabytes) while using flex?179032 Node: Flex is not matching my patterns in the same order that I defined them.179499 Node: My actions are executing out of order or sometimes not at all.181245 Node: How can I have multiple input sources feed into the same scanner at the same time?182018 Node: Can I build nested parsers that work with the same input file?184003 Node: How can I match text only at the end of a file?185010 Node: How can I make REJECT cascade across start condition boundaries?185814 Node: Why cant I use fast or full tables with interactive mode?186828 Node: How much faster is -F or -f than -C?188085 Node: If I have a simple grammar cant I just parse it with flex?188397 Node: Why doesn't yyrestart() set the start state back to INITIAL?188879 Node: How can I match C-style comments?189506 Node: The period isn't working the way I expected.190316 Node: Can I get the flex manual in another format?191561 Node: Does there exist a "faster" NDFA->DFA algorithm?192051 Node: How does flex compile the DFA so quickly?192561 Node: How can I use more than 8192 rules?193527 Node: How do I abandon a file in the middle of a scan and switch to a new file?194937 Node: How do I execute code only during initialization (only before the first scan)?195491 Node: How do I execute code at termination?196268 Node: Where else can I find help?196594 Node: Can I include comments in the "rules" section of the file?196968 Node: I get an error about undefined yywrap().197348 Node: How can I change the matching pattern at run time?197824 Node: How can I expand macros in the input?198186 Node: How can I build a two-pass scanner?199218 Node: How do I match any string not matched in the preceding rules?200136 Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf.201045 Node: Is there a way to make flex treat NULL like a regular character?201840 Node: Whenever flex can not match the input it says "flex scanner jammed".202360 Node: Why doesn't flex have non-greedy operators like perl does?203003 Node: Memory leak - 16386 bytes allocated by malloc.204356 Ref: faq-memory-leak204654 Node: How do I track the byte offset for lseek()?205625 Node: How do I use my own I/O classes in a C++ scanner?207134 Node: How do I skip as many chars as possible?207977 Node: deleteme00209052 Node: Are certain equivalent patterns faster than others?209492 Node: Is backing up a big deal?212910 Node: Can I fake multi-byte character support?214816 Node: deleteme01216257 Node: Can you discuss some flex internals?217366 Node: unput() messes up yy_at_bol219610 Node: The | operator is not doing what I want220712 Node: Why can't flex understand this variable trailing context pattern?222258 Node: The ^ operator isn't working223507 Node: Trailing context is getting confused with trailing optional patterns224742 Node: Is flex GNU or not?225985 Node: ERASEME53227658 Node: I need to scan if-then-else blocks and while loops228428 Node: ERASEME55229627 Node: ERASEME56230725 Node: ERASEME57232083 Node: Is there a repository for flex scanners?233081 Node: How can I conditionally compile or preprocess my flex input file?233397 Node: Where can I find grammars for lex and yacc?233870 Node: I get an end-of-buffer message for each character scanned.234217 Node: unnamed-faq-62234812 Node: unnamed-faq-63235830 Node: unnamed-faq-64237127 Node: unnamed-faq-65238093 Node: unnamed-faq-66238879 Node: unnamed-faq-67239994 Node: unnamed-faq-68240981 Node: unnamed-faq-69242123 Node: unnamed-faq-70242836 Node: unnamed-faq-71243597 Node: unnamed-faq-72244806 Node: unnamed-faq-73245849 Node: unnamed-faq-74246773 Node: unnamed-faq-75247718 Node: unnamed-faq-76248850 Node: unnamed-faq-77249556 Node: unnamed-faq-78250449 Node: unnamed-faq-79251447 Node: unnamed-faq-80253147 Node: unnamed-faq-81254465 Node: unnamed-faq-82257265 Node: unnamed-faq-83258222 Node: unnamed-faq-84260002 Node: unnamed-faq-85261105 Node: unnamed-faq-86262112 Node: unnamed-faq-87263050 Node: unnamed-faq-88263696 Node: unnamed-faq-90264527 Node: unnamed-faq-91265790 Node: unnamed-faq-92268218 Node: unnamed-faq-93268717 Node: unnamed-faq-94269644 Node: unnamed-faq-95271056 Node: unnamed-faq-96272574 Node: unnamed-faq-97273333 Node: unnamed-faq-98274000 Node: unnamed-faq-99274665 Node: unnamed-faq-100275594 Node: unnamed-faq-101276304 Node: What is the difference between YYLEX_PARAM and YY_DECL?277117 Node: Why do I get "conflicting types for yylex" error?277641 Node: How do I access the values set in a Flex action from within a Bison action?278171 Node: Appendices278600 Node: Makefiles and Flex278865 Ref: Makefiles and Flex-Footnote-1282067 Ref: Makefiles and Flex-Footnote-2282184 Ref: Makefiles and Flex-Footnote-3282371 Node: Bison Bridge282422 Ref: Bison Bridge-Footnote-1285089 Node: M4 Dependency285281 Ref: M4 Dependency-Footnote-1286695 Node: Common Patterns286831 Node: Numbers287154 Node: Identifiers288130 Node: Quoted Constructs288957 Node: Addresses290011 Node: Indices291323 Node: Concept Index291615 Node: Index of Functions and Macros318748 Node: Index of Variables323717 Node: Index of Data Types325383 Node: Index of Hooks326271 Node: Index of Scanner Options326839  End Tag Table