If a value exception occurs while processing the predicate part of a forall, exists, iota or a comprehension expression, the location of the error is given as the location of the overall expression rather than the predicate. This is confusing! For example, passing {nil} to this function:
f: set of [bool] -> bool
f(s) ==
exists e in set s & <--- Debugger stops at this line
e; <--- Error really occurs here
It's not critical, but it would make debugging less confusing if this was fixed.
If a value exception occurs while processing the predicate part of a forall, exists, iota or a comprehension expression, the location of the error is given as the location of the overall expression rather than the predicate. This is confusing! For example, passing {nil} to this function:
It's not critical, but it would make debugging less confusing if this was fixed.