0
私のYACCファイルが私のヘッダファイルで定義された型にアクセスできないように見えるこの問題があります。構造体型のYacc共用体
ヘッダーファイルを%code requires{ }
に置き換えると、それは認識されますが、それは実際に私が望むものではありません。
マイst.hヘッダファイル:
struct node {
int item;
int identifier;
struct node *left;
struct node *middle;
struct node *right;
};
typedef struct node NODE;
typedef NODE *TREE;
マイparser.yファイル:私は理解して
error: unknown type name ‘TREE’
:
%{
#include <stdio.h>
#include <stdlib.h>
#include "st.h"
%}
%union {
int value;
TREE token;
}
Yaccの(またはC)が私にこのエラーが発生しますこれは私の最後の間違いである可能性が高いと私は非常にすべての助けに感謝します。
注:**決して** 'typedef'ポインタはありません!そして[ask]を読んで、**すべての**必要な情報を提供してください。 **正確な**エラーメッセージを指定することは問題ではありません。 – Olaf
yaccまたはCがエラーを出していますか? (ヒント:エラーが発生したときには、どのコマンドが実行されていましたか?)そして、Cの場合は、yacc/bisonが生成したファイルまたはlexが生成したファイルに関するエラーですか? (ヒント:エラーメッセージの横にはファイル名が付きます) – rici
また、[mcve]。提示されたコードは正しくコンパイルされます。 – rici