Lex/Flex - Scanning for the EOF character

ale picture ale · Jul 7, 2011 · Viewed 22.3k times · Source

Other people have had the following problem that I am having but I can't find anyone that has reported a solution.. getting Flex to spot the EOF (end of file). I need Flex to find EOF and return a token indicating that it has found it so it can tell Yacc/Bison that it has reached the end of an input source file and can report a successful parse.

Note that this question is not the same as this one because this is about Lex/Flex.

Any help would be awesome. Thank you.

Answer

Ise Wisteria picture Ise Wisteria · Jul 7, 2011

Flex has <<EOF>> pattern which matches only end-of-file. Probably you can return some token indicating end-of-file to the parser as the following.

<<EOF>>     return END_OF_FILE;