> > You can generally do what you need though like this: > > s : {start();} ( alt1 | alt2 | alt3) { end(); } ; > > I also recommend that you do not use backtracking for a production parser. Well, I'm not using backtracking on the whole parser, but only the one induced by syntactic predicates here and there (and in a single rule with options { backtracking=true; }, because the semantic predicates there would seriously hinder readability). > > > Would it be correct to say that during backtracking the 'stack' is not > > properly unwound, > Sort of ;-) It is complicated to get all of this to work exactly like > try {} catch {} finally {}. I think I can probably do it, but it needs > some effort in the templates. I'll 'rule' on this for the next release.
A bit too late for me I'm afraid, with release only weeks away :-) But with the information I have now, I think I can work around it. Thanks, Sven List: http://www.antlr.org/mailman/listinfo/antlr-interest Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "il-antlr-interest" group. To post to this group, send email to il-antlr-interest@googlegroups.com To unsubscribe from this group, send email to il-antlr-interest+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/il-antlr-interest?hl=en -~----------~----~----~----~------~----~------~--~---