Flex - a scanner generator - End-of-file rules

Node: End-of-file rules Next: Miscellaneous Prev: Multiple buffers Up: Top

End-of-file rules

The special rule "<<EOF>>" indicates actions which are to be taken when an end-of-file is encountered and yywrap() returns non-zero (i.e., indicates no further files to process). The action must finish by doing one of four things:

<<EOF>> rules may not be used with other patterns; they may only be qualified with a list of start conditions. If an unqualified <<EOF>> rule is given, it applies to all start conditions which do not already have <<EOF>> actions. To specify an <<EOF>> rule for only the initial start condition, use

	<INITIAL><<EOF>>

These rules are useful for catching things like unclosed comments. An example:

	%x quote
	%%
	
	...other rules for dealing with quotes...
	
	<quote><<EOF>>   {
	         error( "unterminated quote" );
	         yyterminate();
	         }
	<<EOF>>  {
	         if ( *++filelist )
	             yyin = fopen( *filelist, "r" );
	         else
	            yyterminate();
	         }


Next: Miscellaneous Up: Top