@Jake Goulding this is another instance of a bug @Oli just wrote a fix for
Which is blocked on nightly updating?
which hasnt landed in rustc yet
it hasnt even been r+'d^^
I wrote a comment on reddit with the relevant link
1..=0is the range of all possible integers
seems like it should be
.. by itself.
yeah @eddyb has strange logic^^
these ranges are wrapping
at "whatever the size of the scalar is"
wraparound ranges are super useful
and LLVM uses them
it means you don't need a separate concept of a signed range and an unsigned range
which is what we had before
wrapped ranges are great but using
RangeInclusive for them is a bad hack
that type comes with a
contains method that's just plain wrong now
is there a difference in
ahhhh yeah I just never got around to writing a proper type
that handles all the operations correctly
I wonder what the outcome will be of these "internal" bits leaking out to real humans via such things as Miri error messages.
probably the error messages shouldn't use that notation when there is actual wrapping going on
I was just too lazy to implement better pretty printing^^
(the error msg is in rustc btw, and can also occur during CTFE)