Reviewers: ,
https://codereview.appspot.com/563560043/diff/567260043/aclocal.m4 File aclocal.m4 (right): https://codereview.appspot.com/563560043/diff/567260043/aclocal.m4#newcode556 aclocal.m4:556: # check for yyFlexLexer.yypop_buffer_state () since flex 2.5.29 Random thought: Do we want to check for features introduced in 2003 or can we just assume that we never come across ancient versions that don't support this? https://codereview.appspot.com/563560043/diff/567260043/lily/lexer.ll File lily/lexer.ll (right): https://codereview.appspot.com/563560043/diff/567260043/lily/lexer.ll#newcode753 lily/lexer.ll:753: <maininput>{ANY_CHAR} { David, you added this code in commit 6b0ff05318 ("Make lexer more robust against unexpected EOF"). Do you have an idea what I have to do to end up in this code path? I didn't manage to trigger so far :-( I think that the new code is equivalent to the old one, but would prefer to check on an example. Description: Let flex handle the input stack This requires at least flex 2.5.29 released in 2003. Prior cleanups: 1) Use Includable_lexer::new_input in Lily_lexer Only Includable_lexer::new_input (const string &, Sources *) is virtual, the method with type (const string &, const string &, Sources *) should not be declared. 2) Deduplicate code from Includable_lexer::new_input Please review this at https://codereview.appspot.com/563560043/ Affected files (+41, -87 lines): M aclocal.m4 M config.hh.in M lily/includable-lexer.cc M lily/include/includable-lexer.hh M lily/include/lily-lexer.hh M lily/lexer.ll M lily/lily-lexer.cc
