Я смотрю на синтаксический анализатор bison + flex с опцией reentrant.Парсер запускается в функции, которая вызывает yylex_init(&scanner)
, где scanner
- это yyscan_t
.%locations
включено.
Этот анализатор используется для анализа встроенных сценариев, найденных в середине других файлов.Таким образом, номер строки не начинается с 1.
Однако в повторяющемся парсере текущий номер строки скрыт в непрозрачном yyscan_t
, и я не вижу чистого способа установки.Я надеюсь, что что-то упустил.