Yuki Okushi
0cd9c1623f
Fix condition and tests' flags
2019-09-02 03:40:35 +09:00
Yuki Okushi
8e9825aeb9
Fix overflow_check
2019-09-02 03:06:11 +09:00
Yuki Okushi
4a0872b37e
Add overflow_check check
2019-09-02 02:18:16 +09:00
Yuki Okushi
3a6aadaa8c
Add opt-level check
2019-09-02 01:05:38 +09:00
Yuki Okushi
35c9e5f122
Fix const_err with -(-0.0)
2019-09-01 22:05:50 +09:00
Mazdak Farrokhzad
d4757d5bbf
Rollup merge of #63961 - JohnTitor:improve-require-lang-item, r=estebank
...
Add Option<Span> to `require_lang_item`
Fixes #63954
I'm not sure where to take `Some(span)` or something so I use `None` in many places.
r? @estebank
2019-08-29 05:32:51 +02:00
Yuki Okushi
8c921beebb
Apply review comments
2019-08-28 07:11:12 +09:00
Yuki Okushi
82f2b37635
Add Option<Span> to require_lang_item
2019-08-28 07:11:12 +09:00
Ralf Jung
7677d1f771
const_prop: only call error_to_const_error if we are actually showing something
2019-08-27 22:18:25 +02:00
Wesley Wiser
84556502e6
Handle statics in Subst::subst() by implementing TypeFoldable
2019-08-22 06:36:31 -04:00
Wesley Wiser
e63b992030
Resolve PR comments
2019-08-22 06:36:31 -04:00
Wesley Wiser
9fdf5b5551
Remove unnecessary Option
2019-08-22 06:36:31 -04:00
Wesley Wiser
34fe28bc67
Fix tidy
2019-08-22 06:36:31 -04:00
Wesley Wiser
4d62545687
Move def_id out add substsref
2019-08-22 06:36:30 -04:00
Wesley Wiser
f13faf58d9
Remove eval_promoted const-prop hack
2019-08-22 06:36:30 -04:00
Wesley Wiser
73814654b2
Move promoted out of mir::Body
2019-08-22 06:36:30 -04:00
Wesley Wiser
666180c324
Move 'tcx lifetime on MirPass
2019-08-22 06:36:30 -04:00
Ralf Jung
5ac2045d1e
use ImmTy::from_uint in a few more spots
2019-08-17 12:56:46 +02:00
Ralf Jung
3edf099266
make both unary_op and binary_op fully typed, including a return type
2019-08-17 12:56:44 +02:00
Mazdak Farrokhzad
e8fb78bf6c
Rollup merge of #63642 - eddyb:wrap-it-up, r=rkruppe,Mark-Simulacrum
...
Rename overflowing_{add,sub,mul} intrinsics to wrapping_{add,sub,mul}.
These confused @Gankra, and then, also me, especially since `overflowing_*` *methods* also exist, but they map to `*_with_overflow` intrinsics!
r? @oli-obk / @nikomatsakis cc @Mark-Simulacrum (on the rustbuild workaround)
2019-08-17 03:03:02 +02:00
Eduard-Mihai Burtescu
0f1da639d4
Rename overflowing_{add,sub,mul} intrinsics to wrapping_{add,sub,mul}.
2019-08-16 20:04:21 +03:00
Eduard-Mihai Burtescu
b565ece5d8
Remove redundant ty fields from mir::Constant and hair::pattern::PatternRange.
2019-08-16 15:20:27 +03:00
Ralf Jung
15810af0d6
don't add Retag statements for compound types
2019-08-15 12:51:58 +02:00
Mazdak Farrokhzad
5a3359d7cc
Rollup merge of #63299 - spastorino:in-projection-use-ref, r=oli-obk
...
Make qualify consts in_projection use PlaceRef
r? @oli-obk
2019-08-06 08:17:50 +02:00
Santiago Pastorino
30910eef36
Make qualify consts in_projection use PlaceRef
2019-08-05 21:39:22 +02:00
Oliver Scherer
f4f957d00b
Clear the ParamEnv where its information is irrelevant
2019-08-05 17:48:05 +02:00
Oliver Scherer
7710820d18
Fiddle param env through to try_eval_bits in most places
2019-08-05 17:48:05 +02:00
Oliver Scherer
9b87d22ea8
Don't abort on unevaluated constants without at least tryting to eval them
2019-08-05 17:48:04 +02:00
Oliver Scherer
437f017e2e
Clean up the ty::Const::assert* methods
2019-08-05 17:48:04 +02:00
Ralf Jung
1b132a2f41
be less British
2019-08-02 23:31:21 +02:00
Saleem Jaffer
00d32e8687
code review fixes
2019-08-01 12:13:49 +05:30
Saleem Jaffer
0c4513e8ed
code review fixes
2019-08-01 09:49:01 +05:30
Saleem Jaffer
152f0d347e
code review fixes
2019-07-31 12:48:54 +05:30
Saleem Jaffer
35417e722b
renaming throw_err_* to throw_*
2019-07-30 20:18:50 +05:30
Saleem Jaffer
69daf844da
adding throw_ and err_ macros for InterpError
2019-07-30 15:25:12 +05:30
Saleem Jaffer
96205212e5
code review fixes
2019-07-30 12:32:43 +05:30
Saleem Jaffer
9f8b099846
code review fixes
2019-07-29 20:17:52 +05:30
Saleem Jaffer
654519d3c5
use PanicInfo and UnsupportedOpInfo
2019-07-29 13:35:59 +05:30
Saleem Jaffer
8e9d0faff2
adding a err macro for each of the InterpError variants
2019-07-29 13:35:59 +05:30
Saleem Jaffer
aa3d40cd71
tidy fixes
2019-07-29 13:35:10 +05:30
Saleem Jaffer
307798aa38
fixing fallout due to InterpError refactor
2019-07-29 13:35:09 +05:30
Mazdak Farrokhzad
632ce7402f
Rollup merge of #62801 - bjorn3:remove_lower_128bit_ops, r=alexcrichton
...
Remove support for -Zlower-128bit-ops
It is broken and unused
cc https://github.com/rust-lang/rust/issues/58969
blocked https://github.com/rust-lang-nursery/compiler-builtins/pull/302 (removes definitions of the lang items removed in this PR)
r? @alexcrichton
2019-07-26 18:56:43 +02:00
Steven Fackler
91fa898975
Stabilize the type_name intrinsic in core::any
...
Closes rust-lang/rfcs#1428
2019-07-24 21:35:49 -07:00
Ralf Jung
495f9509fe
use PanicMessage type for MIR assertion errors
2019-07-24 10:24:55 +02:00
Ralf Jung
c0420b1a59
do not use InterpError::description outside librustc::mir
2019-07-24 09:12:21 +02:00
Mark Rousskov
b2155dd747
Rollup merge of #62859 - spastorino:rename-to-as-ref, r=Centril
...
Place::as_place_ref is now Place::as_ref
r? @oli-obk
2019-07-23 12:51:16 -04:00
Mark Rousskov
52e9e44c7f
Rollup merge of #60951 - saleemjaffer:mir_better_error_enum, r=oli-obk
...
more specific errors in src/librustc/mir/interpret/error.rs
Implements [this](https://github.com/rust-rfcs/const-eval/issues/4 )
2019-07-23 12:51:02 -04:00
Saleem Jaffer
3730ed9e5b
renames EvalErrorPanic to PanicMessage
2019-07-23 16:42:46 +05:30
Saleem Jaffer
90426ed642
moving some variants from InterpError to EvalErrorPanic
2019-07-23 13:37:04 +05:30
Santiago Pastorino
795d96d87b
Place::as_place_ref is now Place::as_ref
2019-07-22 00:25:07 +02:00