Lexer get semicolon as punctuation