Commit graph

1322 commits

Author SHA1 Message Date
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