What is the best way to handle multiple Flex/Bison parsers inside a project?
I wrote a parser and now I need a second one in the same project. So far in the third section of parser1.y
I inserted the main(..)
method and called yyparse
from there.
What I want to obtain is having two different parsers (parser1.y
and parser2.y
) and be able to use them from an external function (let's assume main
in main.cpp
).
Which precautions should I use to export yyparse
functions outside .y
files and how should I handle two parsers?
PS. I'm using g++ to compile but not the C++ versions of Flex and Bison and I would like to keep it this way (so avoiding encapsulating the parser inside an object).