> Martin's hack falls short of doing the right thing in all cases: you > can't have the first statement of your program be "directive = ..." > or "directive(...)". If that is considered as a serious problem, I'll try to solve it with an additional lookahead token: If the next token is a name, then it is a directive. Regards, Martin