On 11/25/07, Gavin Lambert <antlr at mirality.co.nz> wrote: > That's a valid construct, though. It's essentially identical to: > foo: bar?; > > (Now, if you used that as the only contents of a loop, you'd have > a problem.) Yeah, it was in a loop: foo: ( /* Option1 */ | Option2 | Option3 )+; See the problem? Steve