lex: reset yy_at_bol in yyless() if yyleng is non-zero.
Fixes a bug where calling yyless() to unput all the chars before a
newline would not reset the beginning of line marker. Otherwise,
flex won't match rules that start with a caret (^) after calling
yyless() in thise case. AT&T lex behaves correctly.