flex.info (flex-2.6.3) | : | flex.info (flex-2.6.4) | ||
---|---|---|---|---|
File: flex.info, Node: Top, Next: Copyright, Prev: (dir), Up: (dir) | File: flex.info, Node: Top, Next: Copyright, Prev: (dir), Up: (dir) | |||
flex | flex | |||
**** | **** | |||
This manual describes 'flex', a tool for generating programs that | This manual describes 'flex', a tool for generating programs that | |||
perform pattern-matching on text. The manual includes both tutorial and | perform pattern-matching on text. The manual includes both tutorial and | |||
reference sections. | reference sections. | |||
This edition of 'The flex Manual' documents 'flex' version 2.6.3. It | This edition of 'The flex Manual' documents 'flex' version 2.6.4. It | |||
was last updated on 22 October 2016. | was last updated on 6 May 2017. | |||
This manual was written by Vern Paxson, Will Estes and John Millaway. | This manual was written by Vern Paxson, Will Estes and John Millaway. | |||
* Menu: | * Menu: | |||
* Copyright:: | * Copyright:: | |||
* Reporting Bugs:: | * Reporting Bugs:: | |||
* Introduction:: | * Introduction:: | |||
* Simple Examples:: | * Simple Examples:: | |||
* Format:: | * Format:: | |||
skipping to change at line 1708 | skipping to change at line 1708 | |||
if ( ! yyin ) | if ( ! yyin ) | |||
error( ... ); | error( ... ); | |||
yy_switch_to_buffer( | yy_switch_to_buffer( | |||
yy_create_buffer( yyin, YY_BUF_SIZE ) ); | yy_create_buffer( yyin, YY_BUF_SIZE ) ); | |||
BEGIN(INITIAL); | BEGIN(INITIAL); | |||
} | } | |||
<<EOF>> { | <<EOF>> { | |||
if ( --include_stack_ptr 0 ) | if ( --include_stack_ptr == 0 ) | |||
{ | { | |||
yyterminate(); | yyterminate(); | |||
} | } | |||
else | else | |||
{ | { | |||
yy_delete_buffer( YY_CURRENT_BUFFER ); | yy_delete_buffer( YY_CURRENT_BUFFER ); | |||
yy_switch_to_buffer( | yy_switch_to_buffer( | |||
include_stack[include_stack_ptr] ); | include_stack[include_stack_ptr] ); | |||
} | } | |||
skipping to change at line 4883 | skipping to change at line 4883 | |||
analyze those functions to figure out what they're doing, and then | analyze those functions to figure out what they're doing, and then | |||
replace 'input()' with an appropriate definition of 'YY_INPUT'. You | replace 'input()' with an appropriate definition of 'YY_INPUT'. You | |||
shouldn't need to (and must not) replace 'flex''s 'unput()' function. | shouldn't need to (and must not) replace 'flex''s 'unput()' function. | |||
File: flex.info, Node: Is there a way to make flex treat NULL like a regular ch aracter?, Next: Whenever flex can not match the input it says "flex scanner jam med"., Prev: I am trying to port code from AT&T lex that uses yysptr and yysbuf ., Up: FAQ | File: flex.info, Node: Is there a way to make flex treat NULL like a regular ch aracter?, Next: Whenever flex can not match the input it says "flex scanner jam med"., Prev: I am trying to port code from AT&T lex that uses yysptr and yysbuf ., Up: FAQ | |||
Is there a way to make flex treat NULL like a regular character? | Is there a way to make flex treat NULL like a regular character? | |||
================================================================ | ================================================================ | |||
Yes, '\0' and '\x00' should both do the trick. Perhaps you have an | Yes, '\0' and '\x00' should both do the trick. Perhaps you have an | |||
ancient version of 'flex'. The latest release is version 2.6.3. | ancient version of 'flex'. The latest release is version 2.6.4. | |||
File: flex.info, Node: Whenever flex can not match the input it says "flex scan ner jammed"., Next: Why doesn't flex have non-greedy operators like perl does?, Prev: Is there a way to make flex treat NULL like a regular character?, Up: F AQ | File: flex.info, Node: Whenever flex can not match the input it says "flex scan ner jammed"., Next: Why doesn't flex have non-greedy operators like perl does?, Prev: Is there a way to make flex treat NULL like a regular character?, Up: F AQ | |||
Whenever flex can not match the input it says "flex scanner jammed". | Whenever flex can not match the input it says "flex scanner jammed". | |||
==================================================================== | ==================================================================== | |||
You need to add a rule that matches the otherwise-unmatched text, e.g., | You need to add a rule that matches the otherwise-unmatched text, e.g., | |||
%option yylineno | %option yylineno | |||
%% | %% | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added |