+#elif LEX_SECTION == 3
+
+int yywrap()
+{
+ return 1;
+}
+
+static void yylex_cleanup()
+{
+ /* fix memory leak in lex */
+ yy_delete_buffer(yy_current_buffer);
+ yy_current_buffer = NULL;
+}
+
+static int exitfuncregistered = 0;
+
+void yymyinit(FILE *f)
+{
+ if (! exitfuncregistered && atexit(yylex_cleanup) == 0)
+ exitfuncregistered = 1;
+ yyin = f;
+ yyrestart(f);
+ /* Reset our state */
+ current_level = -1;
+ level_diff = MAXGEDCLEVEL;
+ BEGIN(INITIAL);
+}
+
+#endif