rust/src
Manish Goregaokar 4a1e19990f Rollup merge of #32383 - aidanhs:aphs-heap-move-guarantee, r=alexcrichton
Document heap allocation location guarantee

```
14:25 < aidanhs> is there any guarantee that boxes will not move the value on the heap when they are moved?
14:26 <@steveklabnik> aidanhs: ... i'm not sure if it's a guarantee, but it follows, generally
14:26 <@steveklabnik> aidanhs: moves mean memcpy, so you're memcpying the structure of the box itself, which is copying the pointer
14:26 <@steveklabnik> so the pointer won't be updated
14:26 <@steveklabnik> moves cannot do complex things like move the memory around on the heap
14:26 <@kmc> aidanhs: I would say it's guaranteed
14:27 < aidanhs> steveklabnik: yeah, that's what I was thinking, it'd be pretty strange for rust to do something, but I couldn't find any docs one way or the other
14:27 <@steveklabnik> kmc: aidanhs yeah, it's like a borderline thing that we don't explicitly guanratee but i think IS guaranteed by our other guarantees
14:27 <@steveklabnik> mostly that move == memcpy
14:28 < aidanhs> kmc: steveklabnik great thanks! would a PR to the rust reference along these lines be ok?
14:28 < jmesmon> aidanhs: I believe owning_ref has some discussion of that (stable references)
14:29 <@steveklabnik> aidanhs: i would probably take that, yeah
14:29 < aidanhs> jmesmon: thanks, I'll take a look at that
```
https://botbot.me/mozilla/rust/2016-02-22/?msg=60657619&page=18

r? @steveklabnik
2016-03-26 20:35:49 +05:30
..
bootstrap Introduce 'cargotest' and the check-cargotest buildstep 2016-03-22 21:46:21 +00:00
build_helper Add a Cargo-based build system 2016-02-11 10:42:28 -08:00
compiler-rt@57315f7e07 update compiler-rt submodule 2016-03-15 22:32:38 -05:00
compiletest remove unused variable in compiletest 2016-03-25 14:07:19 -04:00
doc Rollup merge of #32383 - aidanhs:aphs-heap-move-guarantee, r=alexcrichton 2016-03-26 20:35:49 +05:30
driver
etc rustc: Improve compile time of platform intrinsics 2016-03-15 17:32:34 -07:00
grammar
jemalloc@aab1c0a0e0 std: Update jemalloc again to the 4.* track 2016-03-04 09:49:39 -08:00
liballoc alloc: Add unstable issue for FnBox APIs 2016-03-11 22:09:58 -08:00
liballoc_jemalloc rustbuild: fix cross compilation of libstd to i686-unknown-linux-musl 2016-03-06 08:19:51 -05:00
liballoc_system bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
libarena std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libbacktrace Minor spelling fixes 2016-02-09 11:52:39 -05:00
libcollections std: Change encode_utf{8,16} to return iterators 2016-03-22 10:25:30 -07:00
libcollectionstest std: Change encode_utf{8,16} to return iterators 2016-03-22 10:25:30 -07:00
libcore Rollup merge of #32456 - bluss:str-zero, r=alexcrichton 2016-03-26 13:42:04 +05:30
libcoretest std: Change encode_utf{8,16} to return iterators 2016-03-22 10:25:30 -07:00
libflate std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
libfmt_macros bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
libgetopts mk: Distribute fewer TARGET_CRATES 2016-03-07 13:05:12 -08:00
libgraphviz sprinkle feature gates here and there 2016-03-22 22:02:47 -05:00
liblibc@2278a54955 std: Don't spawn threads in wait_with_output 2016-03-09 10:12:36 -08:00
liblog bootstrap: Add a bunch of Cargo.toml files 2016-02-11 11:12:32 -08:00
librand std: Clean out deprecated APIs 2016-03-12 12:31:13 -08:00
librbml Compute a salt from arguments passed via -Cmetadata. 2016-03-25 14:07:17 -04:00
librustc Rollup merge of #32482 - nikomatsakis:erase-via-visitor, r=nagisa 2016-03-26 13:42:05 +05:30
librustc_back Compute a salt from arguments passed via -Cmetadata. 2016-03-25 14:07:17 -04:00
librustc_bitflags rustbuild: Sync some Cargo.toml/lib.rs dependencies 2016-02-21 09:49:13 -08:00
librustc_borrowck Update borrowck to use repr::* instead of a mix 2016-03-23 16:42:54 -04:00
librustc_const_eval sprinkle feature gates here and there 2016-03-22 22:02:47 -05:00
librustc_data_structures Auto merge of #32062 - Marwes:unification_table_for_eq_relations, r=nikomatsakis 2016-03-21 16:00:08 -07:00
librustc_driver store krate information more uniformly 2016-03-25 14:07:19 -04:00
librustc_front fix alignment 2016-03-22 22:03:54 -05:00
librustc_lint issue a future-compat lint for constants of invalid type 2016-03-25 06:45:42 -04:00
librustc_llvm Add intrinsics for float arithmetic with fast flag enabled 2016-03-18 17:31:41 +01:00
librustc_metadata renumber error from E0522 to E0523 2016-03-25 14:07:20 -04:00
librustc_mir Rollup merge of #32482 - nikomatsakis:erase-via-visitor, r=nagisa 2016-03-26 13:42:05 +05:30
librustc_passes Expose attached attributes to FnKind abstraction so that I can look at them in borrowck. 2016-03-21 18:36:22 +01:00
librustc_platform_intrinsics rustc: Improve compile time of platform intrinsics 2016-03-15 17:32:34 -07:00
librustc_plugin Make the compiler emit an error if the crate graph contains two crates with the same crate-name and crate-salt but different SVHs. 2016-03-25 14:07:18 -04:00
librustc_privacy Auto merge of #31710 - eddyb:reify, r=nikomatsakis 2016-03-09 20:16:20 -08:00
librustc_resolve Rollup merge of #32131 - petrochenkov:prim, r=eddyb 2016-03-26 09:07:20 +05:30
librustc_trans Rollup merge of #32469 - nikomatsakis:shared-cgu, r=eddyb 2016-03-26 13:42:04 +05:30
librustc_typeck remove ErasedRegions from substitutions 2016-03-24 14:01:28 -04:00
librustc_unicode std: Change encode_utf{8,16} to return iterators 2016-03-22 10:25:30 -07:00
librustdoc Make CrateStore::crate_name() return an InternedString to avoid unnecessary allocations. 2016-03-25 14:07:17 -04:00
libserialize sprinkle feature gates here and there 2016-03-22 22:02:47 -05:00
libstd Fixup #32476 2016-03-26 13:42:05 +05:30
libsyntax Rollup merge of #32435 - nrc:fix-err-recover, r=nikomatsakis 2016-03-26 13:42:03 +05:30
libsyntax_ext fix cargo.toml for new dependency 2016-03-25 14:39:24 -04:00
libterm term: undo conversion of user defined try!s 2016-03-22 22:03:19 -05:00
libtest sprinkle feature gates here and there 2016-03-22 22:02:47 -05:00
llvm@25c7dc3703 Update LLVM to include a backport to restore AA performance 2016-03-18 15:51:17 +01:00
rt Abort on stack overflow instead of re-raising SIGSEGV 2016-02-05 20:41:18 -05:00
rtstartup Revert "workarounds to make link guards work on windows" 2016-03-25 14:07:20 -04:00
rust-installer@c37d3747da
rustc Add rustbuild dependency from rustc_borrowck upon rustc_mir crate. 2016-03-22 18:09:57 +01:00
rustllvm Auto merge of #32362 - bluss:float-fast-math, r=eddyb 2016-03-19 15:41:42 -07:00
test Rollup merge of #32435 - nrc:fix-err-recover, r=nikomatsakis 2016-03-26 13:42:03 +05:30
tools Auto merge of #32390 - japaric:untry, r=pnkfelix 2016-03-23 08:59:10 -07:00
nightlies.txt Update snapshots to 2016-03-18 (235d774). 2016-03-20 22:37:35 +02:00
snapshots.txt register openbsd snapshot 2016-03-21 06:04:57 +01:00