From b62e063df558afaa2a0dacb4aeb7ed698fd7e5c5 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sat, 25 Jan 2020 08:59:23 +0100 Subject: [PATCH] todo: update --- TODO | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/TODO b/TODO index c955c951..d579b379 100644 --- a/TODO +++ b/TODO @@ -4,12 +4,27 @@ YYUNDEFTOK is an internal symbol number, as YYTERROR. But YYERRCODE is an external token number. ** doc -I feel its ugly to use the GNU style to declare functions in the doc. It +I feel it's ugly to use the GNU style to declare functions in the doc. It generates tons of white space in the page, and may contribute to bad page breaks. -Also, we seem to teach YYPRINT very early on, although it should be -considered deprecated: %printer is superior. +** Bad styling +When the quoted line is shorter than expected, the styling is closed, so it +"leaks" till the end of the diagnostics. + + $ cat parser.yy + #line 1 + // foo + %define parser_class_name {foo} + %language "C++" + %% + exp: + $ bison --color=debug /tmp/parser.yy + /tmp/parser.yy:2.1-31: avertissement: directive dépréciée: « %define parser_class_name {foo} », utilisez « %define api.parser.class {foo} » [-Wdeprecated] + 2 | // foo + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + | %define api.parser.class {foo} + /tmp/parser.yy: avertissement: des fix-its peuvent être appliqués. Exécutez à nouveau avec l'option « --update ». [-Wother] ** improve syntax errors (UTF-8, internationalization) Bison depends on the current locale. For instance: