As dtrace(1) processes D libraries under /usr/lib/dtrace, the compiler may
return an error if one of the depends_on directives in a library is not satisfied. In this case, libdtrace is supposed to ignore the library and carry on. However, the remainder of the library may still be buffered by the lexer, causing libdtrace to erroneously continue processing it on the next call to yyparse(). Fix this by explicitly flushing the input buffer each time the compiler state is reset. MFC after: 3 weeks
This commit is contained in:
parent
ed09cc1b53
commit
f65e699c36
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=283025
@ -743,6 +743,7 @@ yyinit(dt_pcb_t *pcb)
|
||||
#ifdef illumos
|
||||
yysptr = yysbuf;
|
||||
#endif
|
||||
YY_FLUSH_BUFFER;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user