I'll add a bit of information. After using parser tracing, I've found in fact this is happening:
a(b).c is being parsed as `a(b.c)', however the reasoning is different; after reading `a(b)' it reduces just `(b)' by the rule for parenthesised expressions, '(' *expr* ')'. The rest falls into place. I'm pretty sure I have to alter the precedence of *funccall* vs. this '(' *expr* ')' rule, but I'll have to have a think about how to do it. Any help appreciated; otherwise, thanks for your thought. Arlen _______________________________________________ help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison