kconfig: use yylineno option instead of manual lineno increments
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Thu, 22 Mar 2018 17:00:14 +0000 (02:00 +0900)
committerChristian Lamparter <chunkeey@gmail.com>
Sun, 10 Feb 2019 21:08:48 +0000 (22:08 +0100)
commit06469ce5c1166d9da39eaa9bb1cda68190a20ed3
treede9b1306bf3680c587f3a44f5253d7a28a87d721
parent04b4b91c1092eb054b8e0ddef72052170ef3e4ae
kconfig: use yylineno option instead of manual lineno increments

Tracking the line number by hand is error-prone since you need to
increment it in every \n matching pattern.

If '%option yylineno' is set, flex defines 'yylineno' to contain the
current line number and automatically updates it each time it reads a
\n character.  This is much more convenient although the lexer does
not initializes yylineno, so you need to set it to 1 each time you
start reading a new file, and restore it you go back to the previous
file.

I tested this with DEBUG_PARSE, and confirmed the same dump message
was produced.

I removed the perf-report option.  Otherwise, I see the following
message:
  %option yylineno entails a performance penalty ONLY on rules that
  can match newline characters

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
config/lkc.h
config/zconf.l