Alexandre Duret-Lutz adl@lrde.epita.fr writes:
Yes, I've added an overflow test to all of those already; they all use the same parsing rule and data structure.
We should have a release of 2.10.1 later today with those overflow tests and a few additional minor fixes. I have some idea to modify the way those "ranged" operators are stored in order to support larger values, but that will be for a later version.
Note that while using ##[400] fails
| % ltl2tgba '{a ##[400] b}' --stats="%s states" | >>> {a ##[400] b} | ^^^ | 400 exceeds maximum supported repetition (254)
a workaround is to do
| % ltl2tgba '{a ##[200] ##[200] b}' --stats="%s states" | 402 states
That workaround did not work in previous version because ##[200] ##[200] would be fused into ##[400]. The 2.10.1 will only fuse those operators if they do not overflow.