Parser - ошибка сегментации при вызове yytext

Мой парсер распознает грамматику и указывает правильную строку ошибки, используя yylineno. Я хочу напечатать символ, вызвавший ошибку.

int yyerror(string s)
{
  extern int yylineno;  // defined and maintained in lex.yy.c
  extern char *yytext;  // defined and maintained in lex.yy.c

  cerr << "error: " << s << " -> " << yytext << " @ line " << yylineno << endl;
  //exit(1);
}

Я получаю эту ошибку, когда пишу что-то неприемлемое по грамматике:

ошибка: синтаксическая ошибка -> ошибка сегментации

Разве я не должен использовать yytext? Если нет, то какая переменная содержит символ, вызвавший синтаксическую ошибку?

Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос