> On 2 Jul 2019, at 07:08, Akim Demaille <[email protected]> wrote: > > Hi Hans,
Hello, >> Le 18 juin 2019 à 18:09, Hans Åberg <[email protected]> a écrit : >> >> As 8-bit character tokens are not useful with UTF-8, I have replaced it with: >> %token token_error "token error" >> >> . { return my_parser::token::token_error; } >> >> Please let me know if there is a better way to generate a parser error. > > I personally prefer to throw an exception. > > . throw parser::syntax_error(loc, "invalid character: "s + yytext); I changed to that too, writing to make it look as though thrown by the parser: . { throw my_parser::syntax_error(yylloc, "syntax error, unexpected my_parser token error."); When the match is a part of an UTF-8 byte, it is not useful to report what it is. The token-error token may still be needed, though, as I store token values on the symbol table.
