]> git.lizzy.rs Git - rust.git/commit
Auto merge of #55270 - RalfJung:stacked-borrows-ng, r=oli-obk
authorbors <bors@rust-lang.org>
Mon, 29 Oct 2018 03:28:31 +0000 (03:28 +0000)
committerbors <bors@rust-lang.org>
Mon, 29 Oct 2018 03:28:31 +0000 (03:28 +0000)
commit4e88b7363b7858960ccfd87326ece9d00bf4d973
treebbece503c44c85eaac69e2bc0c46d3cf5192f16e
parentbcb05a0ab23291851d0a233547f2ad3cbb9cc222
parent95b19bbb6f270f584b1e15a874737b59e8203544
Auto merge of #55270 - RalfJung:stacked-borrows-ng, r=oli-obk

miri engine: Stacked Borrows NG

For more refined tracking in miri, we do return untagged pointers from the memory abstraction after allocations and let the caller decide how to tag these.

Also refactor the `tag_(de)reference` hooks so they can be more easily called in the ref-to-place and place-to-ref methods, and reorder things in validation: validation calls ref-to-place which (when running in miri) triggers some checks, so we want to run it rather late and catch other problems first. We also do not need to redundantly check the ref to be allocated any more, the checks miri does anyway imply thath.

r? @oli-obk
src/librustc_mir/const_eval.rs