I'm having trouble seeing how to handle user-defined types without lots
of feedback from the parser to the lexer. For example, consider a C-like
language with a struct declaration:
foo() {
struct a {...}; // type defn
struct a b; // declare object 'b' of user-defined type 'a'
}
this is easy to parse, but if you add a typedef, or go to C++, you can
have code that looks like this:
foo() {
struct a {...};
a b;
}
With a simple flex/bison setup this is likely to lead to a lot of
conflicts. So how do you handle this? Do you just work through the
conflicts, if possible, or is this a job for a hand-coded lexer, which
can be told about new types at runtime?
_______________________________________________
address@hidden https://lists.gnu.org/mailman/listinfo/help-bison