Глава "Альтернативы Пролога" в документах Bison

исал заголовок кода бизона:

%{
#include "foo.h"
%}

И я определил структуру с именем 'Foo' в заголовке. Я хотел бы использовать его в качестве типа токена в Bison.

%define api.value.type union
%token <Foo*> bar

Тогда я использую-d возможность генерироватьbison.tab.h файл.

bison -d bison.y

Но нет#include foo.h вbison.tab.hи использует struct Foo для определения объединения YYSTYPE.

//bison.tab.h
union YYSTPE {
    Foo* bar;
    ...
};

Это вызвало ошибку при компиляции этой программы:error: ‘Foo’ does not name a type

Есть ли способ включить заголовочный файл вbison.tab.h или другое решение этого дела?

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

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