[ragel-users] 0x0E..0xFF produces "lower end of range is greater then upper end"

Iñaki Baz Castillo ibc at aliax.net
Mon Oct 21 15:17:57 UTC 2013

2013/10/21 Iñaki Baz Castillo <ibc at aliax.net>:
> Hi, using Ragel 6.7 in C with this simple grammar rule:
>   # Any byte except NULL, CR or LF.
>   main := ( 0x01..0x09 | 0x0B..0x0C | 0x0E..0xFF )+;
> When compiling the grammar it generates the following error:
>   1:36: lower end of range is greater then upper en

The following modification in the grammar fixes it:

  ( 0x01..0x09 | 0x0B..0x0C | 0x0E..0x7F | 0x80..0xFF)+;

but I don't understand wht it is required to split the last range into
two ranges.

Thanks a lot.

Iñaki Baz Castillo
<ibc at aliax.net>

ragel-users mailing list
ragel-users at complang.org

More information about the ragel-users mailing list