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: 319164  Tag Table: (Indirect) Node: Top1622 Node: Copyright9420 Node: Reporting Bugs10939 Node: Introduction11244 Node: Simple Examples12073 Node: Format15361 Node: Definitions Section15816 Ref: Definitions Section-Footnote-118074 Node: Rules Section18142 Node: User Code Section19300 Node: Comments in the Input19738 Node: Patterns21108 Ref: case and character ranges27940 Node: Matching31943 Node: Actions35228 Node: Generated Scanner44190 Node: Start Conditions49209 Node: Multiple Input Buffers59751 Ref: Scanning Strings66292 Node: EOF67921 Node: Misc Macros69507 Node: User Values72361 Node: Yacc74686 Node: Scanner Options75581 Node: Options for Specifying Filenames78370 Ref: option-header78596 Ref: option-outfile79310 Ref: option-stdout79635 Node: Options Affecting Scanner Behavior80618 Ref: option-case-insensitive80859 Ref: option-lex-compat81292 Ref: option-batch81824 Ref: option-interactive82343 Ref: option-7bit83697 Ref: option-8bit85001 Ref: option-default85413 Ref: option-always-interactive85477 Ref: option-posix86081 Ref: option-stack87228 Ref: option-stdinit87336 Ref: option-yylineno87815 Ref: option-yywrap88258 Node: Code-Level And API Options88525 Ref: option-ansi-definitions88752 Ref: option-ansi-prototypes89000 Ref: option-bison-bridge89248 Ref: option-bison-locations89589 Ref: option-noline89849 Ref: option-reentrant90363 Ref: option-c++90975 Ref: option-array91101 Ref: option-pointer91199 Ref: option-prefix91326 Ref: option-main92854 Ref: option-nounistd93038 Ref: option-yyclass93549 Node: Options for Scanner Speed and Size94033 Ref: option-align94583 Ref: option-ecs95085 Ref: option-meta-ecs96124 Ref: option-read96612 Ref: option-full98495 Ref: option-fast98690 Node: Debugging Options99614 Ref: option-backup99801 Ref: option-debug100346 Ref: option-perf-report101068 Ref: option-nodefault101694 Ref: option-trace102012 Ref: option-nowarn102303 Ref: option-verbose102371 Ref: option-warn102800 Node: Miscellaneous Options103019 Node: Performance103475 Node: Cxx113722 Node: Reentrant121814 Node: Reentrant Uses122548 Node: Reentrant Overview124110 Node: Reentrant Example124910 Node: Reentrant Detail125683 Node: Specify Reentrant126187 Node: Extra Reentrant Argument126837 Node: Global Replacement128089 Node: Init and Destroy Functions129324 Node: Accessor Methods131845 Node: Extra Data133192 Node: About yyscan_t135459 Node: Reentrant Functions135856 Ref: bison-functions137340 Node: Lex and Posix138079 Node: Memory Management145426 Ref: memory-management145572 Node: The Default Memory Management145806 Ref: The Default Memory Management-Footnote-1149626 Node: Overriding The Default Memory Management149779 Ref: Overriding The Default Memory Management-Footnote-1152193 Node: A Note About yytext And Memory152357 Node: Serialized Tables153597 Ref: serialization153741 Node: Creating Serialized Tables154521 Node: Loading and Unloading Serialized Tables156136 Node: Tables File Format157909 Node: Diagnostics164934 Node: Limitations168343 Node: Bibliography170291 Node: FAQ170961 Node: When was flex born?176124 Node: How do I expand backslash-escape sequences in C-style quoted strings?176501 Node: Why do flex scanners call fileno if it is not ANSI compatible?177804 Node: Does flex support recursive pattern definitions?178601 Node: How do I skip huge chunks of input (tens of megabytes) while using flex?179448 Node: Flex is not matching my patterns in the same order that I defined them.179915 Node: My actions are executing out of order or sometimes not at all.181661 Node: How can I have multiple input sources feed into the same scanner at the same time?182434 Node: Can I build nested parsers that work with the same input file?184419 Node: How can I match text only at the end of a file?185426 Node: How can I make REJECT cascade across start condition boundaries?186230 Node: Why cant I use fast or full tables with interactive mode?187244 Node: How much faster is -F or -f than -C?188501 Node: If I have a simple grammar cant I just parse it with flex?188813 Node: Why doesn't yyrestart() set the start state back to INITIAL?189295 Node: How can I match C-style comments?189922 Node: The period isn't working the way I expected.190732 Node: Can I get the flex manual in another format?191977 Node: Does there exist a "faster" NDFA->DFA algorithm?192467 Node: How does flex compile the DFA so quickly?192977 Node: How can I use more than 8192 rules?193943 Node: How do I abandon a file in the middle of a scan and switch to a new file?195353 Node: How do I execute code only during initialization (only before the first scan)?195907 Node: How do I execute code at termination?196684 Node: Where else can I find help?197010 Node: Can I include comments in the "rules" section of the file?197384 Node: I get an error about undefined yywrap().197764 Node: How can I change the matching pattern at run time?198240 Node: How can I expand macros in the input?198602 Node: How can I build a two-pass scanner?199634 Node: How do I match any string not matched in the preceding rules?200552 Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf.201461 Node: Is there a way to make flex treat NULL like a regular character?202256 Node: Whenever flex can not match the input it says "flex scanner jammed".202776 Node: Why doesn't flex have non-greedy operators like perl does?203419 Node: Memory leak - 16386 bytes allocated by malloc.204772 Ref: faq-memory-leak205070 Node: How do I track the byte offset for lseek()?206041 Node: How do I use my own I/O classes in a C++ scanner?207550 Node: How do I skip as many chars as possible?208393 Node: deleteme00209468 Node: Are certain equivalent patterns faster than others?209908 Node: Is backing up a big deal?213326 Node: Can I fake multi-byte character support?215232 Node: deleteme01216673 Node: Can you discuss some flex internals?217782 Node: unput() messes up yy_at_bol220026 Node: The | operator is not doing what I want221128 Node: Why can't flex understand this variable trailing context pattern?222674 Node: The ^ operator isn't working223923 Node: Trailing context is getting confused with trailing optional patterns225158 Node: Is flex GNU or not?226401 Node: ERASEME53228074 Node: I need to scan if-then-else blocks and while loops228844 Node: ERASEME55230043 Node: ERASEME56231141 Node: ERASEME57232499 Node: Is there a repository for flex scanners?233497 Node: How can I conditionally compile or preprocess my flex input file?233813 Node: Where can I find grammars for lex and yacc?234286 Node: I get an end-of-buffer message for each character scanned.234633 Node: unnamed-faq-62235228 Node: unnamed-faq-63236246 Node: unnamed-faq-64237543 Node: unnamed-faq-65238509 Node: unnamed-faq-66239295 Node: unnamed-faq-67240410 Node: unnamed-faq-68241397 Node: unnamed-faq-69242539 Node: unnamed-faq-70243252 Node: unnamed-faq-71244013 Node: unnamed-faq-72245222 Node: unnamed-faq-73246265 Node: unnamed-faq-74247189 Node: unnamed-faq-75248134 Node: unnamed-faq-76249266 Node: unnamed-faq-77249972 Node: unnamed-faq-78250865 Node: unnamed-faq-79251863 Node: unnamed-faq-80253563 Node: unnamed-faq-81254881 Node: unnamed-faq-82257681 Node: unnamed-faq-83258638 Node: unnamed-faq-84260418 Node: unnamed-faq-85261521 Node: unnamed-faq-86262528 Node: unnamed-faq-87263466 Node: unnamed-faq-88264112 Node: unnamed-faq-90264943 Node: unnamed-faq-91266206 Node: unnamed-faq-92268634 Node: unnamed-faq-93269133 Node: unnamed-faq-94270060 Node: unnamed-faq-95271472 Node: unnamed-faq-96272990 Node: unnamed-faq-97273749 Node: unnamed-faq-98274416 Node: unnamed-faq-99275081 Node: unnamed-faq-100276010 Node: unnamed-faq-101276720 Node: What is the difference between YYLEX_PARAM and YY_DECL?277533 Node: Why do I get "conflicting types for yylex" error?278057 Node: How do I access the values set in a Flex action from within a Bison action?278587 Node: Appendices279016 Node: Makefiles and Flex279281 Ref: Makefiles and Flex-Footnote-1282483 Ref: Makefiles and Flex-Footnote-2282600 Ref: Makefiles and Flex-Footnote-3282787 Node: Bison Bridge282838 Ref: Bison Bridge-Footnote-1285505 Node: M4 Dependency285697 Ref: M4 Dependency-Footnote-1287111 Node: Common Patterns287247 Node: Numbers287570 Node: Identifiers288546 Node: Quoted Constructs289373 Node: Addresses290427 Node: Indices291739 Node: Concept Index292031 Node: Index of Functions and Macros319164 Node: Index of Variables324133 Node: Index of Data Types325799 Node: Index of Hooks326687 Node: Index of Scanner Options327255  End Tag Table