Commit graph

80172 commits

Author SHA1 Message Date
bors
abe19a7305 Auto merge of #55921 - scalexm:placeholders, r=nikomatsakis
Add placeholder types

Fixes #48696 (handle universes in canonicalization of type inference vars), and fixes #55098.
2018-11-25 06:48:21 +00:00
bors
37961dbd2d Auto merge of #55959 - matthewjasper:remove-end-region, r=nikomatsakis
Cleanup from lexical MIR borrowck removal

Lexical MIR borrowck was removed months ago now, and `EndRegion`s are no longer used for MIRI verification.

* Remove `rustc::mir::StatementKind::EndRegion` and the `-Zemit_end_regions` flag
* Use `RegionVid` instead of `Region` in BorrowSet
* Rewrite drop generation to create fewer goto terminators.

r? @nikomatsakis
2018-11-25 03:00:30 +00:00
scalexm
b8a30f04cd Try to work around #53332 in src/test/run-pass/rustc-rust-log.rs 2018-11-24 23:42:14 +01:00
Oliver Scherer
b853252bcd Rebase fallout 2018-11-24 11:36:32 +01:00
Oliver Scherer
360f9888bc update miri submodule 2018-11-24 11:36:32 +01:00
Oliver Scherer
3220c0ce1a Explain why vtable generation needs no alignment checks 2018-11-24 11:36:32 +01:00
Oliver Scherer
22872196f5 Factor out mplace offsetting into its own method 2018-11-24 11:36:32 +01:00
Oliver Scherer
972d798881 Document Allocation 2018-11-24 11:36:32 +01:00
Oliver Scherer
cb8fa33572 tidy 2018-11-24 11:36:32 +01:00
Oliver Scherer
a5ef2d1b54 Array and slice projections need to update the place alignment 2018-11-24 11:36:32 +01:00
Ralf Jung
10102d1f0a comment nit
Co-Authored-By: oli-obk <github35764891676564198441@oli-obk.de>
2018-11-24 11:36:32 +01:00
Oliver Scherer
9b8e82ad24 Use correct alignment checks for scalars and zsts, too 2018-11-24 11:36:32 +01:00
Oliver Scherer
927c5aab47 Use correct alignment for fat pointer extra part 2018-11-24 11:36:32 +01:00
Oliver Scherer
9d57adf2ba Explain {read,write}_scalar failure to cope with zsts 2018-11-24 11:36:32 +01:00
Oliver Scherer
8b04b09869 Move alignment checks out of Allocation 2018-11-24 11:36:32 +01:00
Oliver Scherer
1c08ced995 Explain early abort legality 2018-11-24 11:36:32 +01:00
Oliver Scherer
d3139b9c41 Rebase fallout 2018-11-24 11:36:32 +01:00
Oliver Scherer
b820cc79a9 Clean up array/slice of primitive validation 2018-11-24 11:36:32 +01:00
Oliver Scherer
65b702c6b1 Update miri submodule 2018-11-24 11:36:32 +01:00
Oliver Scherer
87bd5d13d8 Remove stderr file, because the test passes now 2018-11-24 11:36:32 +01:00
Oliver Scherer
ef332959dc Reintroduce zst-slice reading read_bytes method on Memory 2018-11-24 11:36:32 +01:00
Oliver Scherer
ebf03363f2 Properly test for int pointers in fat pointers to str slices of zero chars 2018-11-24 11:36:31 +01:00
Oliver Scherer
cc2f46e55a Reorder methods in allocation.rs 2018-11-24 11:36:31 +01:00
Oliver Scherer
20dee47a66 Add regression test for integral pointers in zst str slice fat pointers 2018-11-24 11:36:31 +01:00
Oliver Scherer
df1ed0c2a6 Make a method that doesn't need Self a free function instead 2018-11-24 11:36:31 +01:00
Oliver Scherer
a835555474 Make zst accesses in allocations take the regular path.
Speeding up zst accesses should be done on a higher level.
2018-11-24 11:36:31 +01:00
Oliver Scherer
3a0e8254b0 Remove unnecessary Result (function always returned Ok) 2018-11-24 11:36:31 +01:00
Oliver Scherer
07e7804110 Adjust rustc_mir::interpret to changes in Allocation/Memory methods 2018-11-24 11:36:31 +01:00
Oliver Scherer
9ecde5712e Move some byte and scalar accessors from Memory to Allocation 2018-11-24 11:36:31 +01:00
Oliver Scherer
ad11856431 Fiddle a HasDataLayout through the allocation methods 2018-11-24 11:36:31 +01:00
Oliver Scherer
04210f3e16 Access self instead of alloc 2018-11-24 11:36:31 +01:00
Oliver Scherer
c392fbbbf1 Adjust generics to Allocation parameters 2018-11-24 11:36:31 +01:00
Oliver Scherer
7c9d786e50 Move alignment and bounds check from Memory to Allocation 2018-11-24 11:36:31 +01:00
Oliver Scherer
d98c46ce57 Move undef mask methods from Memory to Allocation 2018-11-24 11:36:31 +01:00
Oliver Scherer
eb30ce8acb Move relocation methods from Memory to Allocation 2018-11-24 11:36:31 +01:00
Oliver Scherer
d40a7713d3 Preliminary code adjustment to let the compiler complain about missing methods 2018-11-24 11:36:31 +01:00
Oliver Scherer
98cd2ad4ea Move some methods from Memory to Allocation 2018-11-24 11:36:31 +01:00
scalexm
4478dced47 Fix NLL ui test 2018-11-24 01:24:40 +01:00
scalexm
c0f98e8390 Fix ChalkInferenceContext::into_hh_goal 2018-11-24 01:24:40 +01:00
scalexm
5b2baa8336 Implement some instantiate / canonical routines 2018-11-24 01:24:40 +01:00
scalexm
95861b1590 Move BoundTy debruijn index to the TyKind enum variant 2018-11-24 01:24:40 +01:00
scalexm
6bf17d249b Instantiate all bound vars universally 2018-11-24 01:24:40 +01:00
scalexm
cdb96be11e Handle placeholder types in canonicalization 2018-11-24 01:24:40 +01:00
scalexm
91623ca640 Add HAS_TY_PLACEHOLDER flag 2018-11-24 01:24:40 +01:00
scalexm
da3def3ebf Rename some occurences of skol to placeholder 2018-11-24 01:24:40 +01:00
scalexm
05995a8522 Introduce TyKind::Placeholder variant 2018-11-24 01:24:40 +01:00
scalexm
7401e3def5 Distinguish between placeholder kinds 2018-11-24 01:24:40 +01:00
kennytm
36189a2739
Rollup merge of #56168 - sfackler:raw-entry-tracking, r=kennytm
Fix the tracking issue for hash_raw_entry

It used to point to the implementation PR.
2018-11-24 01:32:03 +08:00
kennytm
69d4901846
Rollup merge of #56162 - adrianheine:patch-1, r=withoutboats
std::str Adapt documentation to reality
2018-11-24 01:32:01 +08:00
kennytm
c9870a4fe7
Rollup merge of #56154 - petrhosek:fuchsia-linker-args, r=alexcrichton
Pass additional linker flags when targeting Fuchsia

This is a follow up to 8aa9267 which changed the driver to use lld
directly rather than invoking it through Clang. This change ensures
we pass all the necessary flags to lld.
2018-11-24 01:31:59 +08:00