Open
Description
Because of this code:
(CtlOp.Lt, CTree.Literal (VUInt n)) -> case tt of
CTree.Postlude PTUInt -> S . TInteger <$> genUniformRM (0, fromIntegral n - 1)
_ -> error "Cannot apply lt operator to target"
We can only apply rules like uint .lt 2
. It forbids the following cases:
rule1 = nint .lt 2
rule2 = int .lt 2
rule3 = 1..5 .lt 2
rule4 = 1 .lt 2
rule5 = ((1..3) / (1..5)) .lt 2
All these cases are accepted by the cddl
tool. The same seems to happen with most of the other control operators.