1

Yacc/Bison が処理する入力に対して行ったすべてのリダクションを出力する方法はありますか? これはデバッグの大きな助けになります。私はすでに試しました

| Item1 { printf("Item1: %s\n", yytext); }

最後の文字のみを出力し、

| Item1 { printf("Item1: %s\n", $$); }

フォーマット引数になるのは、コンパイラからのポインタ警告ではありません。私はそれを間違っていますか?

4

1 に答える 1

2

デバッグ出力を有効にすることができました

  1. #define YYDEBUG 1C 宣言を入れる

  2. 追加int yydebug = 1;の C コード セクションを挿入する

詳細については、「YYDEBUG を使用してデバッグ情報を生成する」 、「パーサーをデバッグする」、およびこの yacc の例を参照してください。

于 2012-10-27T13:01:28.487 に答える