Parser - Segmentierungsfehler beim Aufruf von yytext

Mein Parser erkennt die Grammatik und zeigt mit yylineno die richtige Fehlerzeile an. Ich möchte das Symbol ausdrucken, das den Fehler verursacht hat.

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);
}

Ich erhalte diesen Fehler, wenn ich etwas schreibe, das von der Grammatik nicht akzeptiert wird:

Fehler: Syntaxfehler -> Segmentierungsfehler

Soll ich keinen yytext benutzen? Wenn nicht, welche Variable enthält das Symbol, das den Syntaxfehler verursacht hat?

Vielen Dan

Antworten auf die Frage(4)

Ihre Antwort auf die Frage