varkor
87463c3962
Improve some comments
2018-08-20 23:16:15 +01:00
varkor
798b9ff9d5
Tweak comments
2018-08-19 23:10:18 +01:00
varkor
0383539ded
Fix handling of floating-point ranges
2018-08-16 20:10:01 +01:00
varkor
1dbc78112f
Handle equivalence classes of length-1 ranges
2018-08-16 20:10:01 +01:00
varkor
e9c8361cc6
Add equivalence class splitting for range constructors
2018-08-16 20:10:01 +01:00
varkor
9e9e023354
More formatting improvements
2018-08-16 20:09:05 +01:00
varkor
400cb1411e
Add a summary of the algorithm to the file
2018-08-16 20:09:05 +01:00
varkor
99754adbbb
Some reformatting
2018-08-16 20:09:05 +01:00
varkor
5959a358e4
Move logic from push_wild_constructor to apply_constructor
2018-08-16 20:09:05 +01:00
varkor
4aa929cf8b
Move witnesses inside push_wild_constructor
2018-08-16 20:09:05 +01:00
varkor
bfc0807b28
Add some comments
2018-08-16 20:09:05 +01:00
varkor
af366b0eb8
Refactor condition
2018-08-16 20:09:05 +01:00
varkor
07064de9a7
No longer return value_constructors for all_constructors
2018-08-16 20:09:05 +01:00
varkor
d27c21c016
Refactor for less allocation
2018-08-16 20:09:05 +01:00
varkor
6c21a0322c
Refactor after miri api changes
2018-08-16 20:09:05 +01:00
varkor
732d638483
Replace ... with ..= in suggestions
...
As ... is "(silently) deprecated". Presumably this means we should be giving correct, up-to-date suggestions, though.
2018-08-16 20:09:05 +01:00
varkor
1aa749469b
Introduce signed_bias method
...
The epitome of simplicity!
2018-08-16 20:09:05 +01:00
varkor
72cc4bd33b
Inline encode and decode methods
2018-08-16 20:09:05 +01:00
varkor
be12b242ce
Fix print_miri_value for signed integers
2018-08-16 20:09:05 +01:00
varkor
97a032ebb4
Simplify bitwise operations
2018-08-16 20:09:05 +01:00
varkor
c388c11a60
Special-case (RangeEnd::Included, Ordering::Equal) in lower_pattern_unadjusted
2018-08-16 20:09:05 +01:00
varkor
effb3d05a0
Improve the comments
2018-08-16 20:09:05 +01:00
varkor
a9f2c5a7b2
Fix sign conversion arithmetic errors
2018-08-16 20:09:05 +01:00
varkor
f4af3b015f
Refactor to remove explicit integer type matching
2018-08-16 20:09:05 +01:00
varkor
a553fa7244
Fix integer overflow
2018-08-16 20:09:05 +01:00
varkor
7695bd0be9
Use bit operators for min_max_ty
2018-08-16 20:09:04 +01:00
varkor
c00fd8f58c
Refactor interval conditions
2018-08-16 20:09:04 +01:00
varkor
7f72030421
Fix range splitting
2018-08-16 20:09:04 +01:00
varkor
a20cb1084a
Require just the Unicode Scalar Values to be matched for a char
2018-08-16 20:09:04 +01:00
varkor
9778a81e92
Improve macros with reduced repetition
2018-08-16 20:09:04 +01:00
varkor
121fa8d499
Fix handling of signed integers
2018-08-16 20:09:04 +01:00
varkor
ed5a4d5e60
Add feature gate and refactor
2018-08-16 20:09:04 +01:00
varkor
384db4f0cf
Add support for all integer types
2018-08-16 20:09:04 +01:00
varkor
b3d2baff94
Give correct suggestions
2018-08-16 20:09:04 +01:00
varkor
e3357d9984
Implement interval checking
2018-08-16 20:09:04 +01:00
Oliver Schneider
37e18e7a30
Second field of ScalarPair can be undef in some cases
2018-08-02 13:16:53 +02:00
Oliver Schneider
c6c06854c0
Reintroduce Undef
and properly check constant value sizes
2018-08-01 15:29:35 +02:00
Shotaro Yamada
3525368a56
Use str::repeat
2018-07-27 23:26:36 +09:00
Oliver Schneider
de511438cd
Promoteds are statics and statics have a place, not just a value
2018-07-23 09:51:30 +02:00
csmoe
19730cc996
Fix tidy
2018-07-16 15:09:17 +02:00
csmoe
6a16b38198
ExprKind
2018-07-16 15:09:16 +02:00
csmoe
14893ba96b
DeclKind
2018-07-16 15:09:16 +02:00
csmoe
114314c920
StmtKind
2018-07-16 15:09:16 +02:00
csmoe
fe8955bd58
BinOpKind
2018-07-16 15:09:16 +02:00
varkor
adf4ef7b98
Use LitToConstError rather than bool for errors
2018-07-02 19:44:27 +01:00
varkor
0195714836
Fix ICEs with match/return expressions inside array lengths
2018-07-02 19:44:27 +01:00
varkor
b00050f4cf
Add more safeguards to "missing binding mode" errors
2018-07-02 19:44:27 +01:00
varkor
998141f8ef
Fix another return-const ICE
2018-07-02 19:43:16 +01:00
bors
d94b804863
Auto merge of #51882 - varkor:check-type_dependent_defs, r=estebank
...
Always check type_dependent_defs
Directly indexing into `type_dependent_defs` has caused multiple ICEs in the past (https://github.com/rust-lang/rust/issues/46771 , https://github.com/rust-lang/rust/issues/49241 , etc.) and is almost certainly responsible for #51798 too. This PR ensures we always check `type_dependent_defs` first, which should prevent any more of these (or at least make them easier to track down).
2018-07-01 08:41:50 +00:00
bors
ab8a67c12a
Auto merge of #51729 - matthewjasper:move-errors, r=nikomatsakis
...
[NLL] Better move errors
Make a number of changes to improve the quality of NLL cannot move errors.
* Group errors that occur in the same `match` with the same cause.
* Suggest `ref`, `&` or removing `*` to avoid the move.
* Show the place being matched on.
Differences from AST borrowck:
* `&` is suggested over `ref` when matching on a place that can't be moved from.
* Removing `*` is suggested instead of adding `&` when applicable.
* Sub-pattern spans aren't used, this would probably need Spans on Places.
Closes #45699
Closes #46627
Closes #51187
Closes #51189
r? @pnkfelix
2018-06-29 12:40:12 +00:00