rust/src/tools
bors 8928de7439 Auto merge of #52972 - RalfJung:from_raw_parts_align, r=alexcrichton
debug_assert to ensure that from_raw_parts is only used properly aligned

This does not help nearly as much as I would hope because everybody uses the distributed libstd which is compiled without debug assertions. For this reason, I am not sure if this is even worth it. OTOH, this would have caught the misalignment fixed by https://github.com/rust-lang/rust/issues/42789 *if* there had been any tests actually using ZSTs with alignment >1 (we have a CI runner which has debug assertions in libstd enabled), and it seems to currently [fail in the rg testsuite](https://ci.appveyor.com/project/rust-lang/rust/build/1.0.8403/job/v7dfdcgn8ay5j6sb). So maybe it is worth it, after all.

I have seen the attribute `#[rustc_inherit_overflow_checks]` in some places, does that make it so that the *caller's* debug status is relevant? Is there a similar attribute for `debug_assert!`? That could even subsume `rustc_inherit_overflow_checks`: Something like `rustc_inherit_debug_flag` could affect *all* places that change the generated code depending on whether we are in debug or release mode. In fact, given that we have to keep around the MIR for generic functions anyway, is there ever a reason *not* to handle the debug flag that way? I guess currently we apply debug flags like `cfg` so this is dropped early during the MIR pipeline?

EDIT: I learned from @eddyb that because of how `debug_assert!` works, this is not realistic. Well, we could still have it for the rustc CI runs and then maybe, eventually, when libstd gets compiled client-side and there is both a debug and a release build... then this will also benefit users.^^
2018-08-19 09:40:36 +00:00
..
build-manifest Add lldb to the build 2018-08-14 18:59:23 -06:00
cargo@6a7672ef53 Update cargo 2018-08-14 22:24:41 -07:00
cargotest update ripgrep tested by cargotest 2018-08-06 18:27:58 +02:00
clang@2a284a70e2 Add lldb to the build 2018-08-14 18:59:23 -06:00
clippy@bac76afb5a Update clippy 2018-08-14 11:29:00 -07:00
compiletest Auto merge of #52972 - RalfJung:from_raw_parts_align, r=alexcrichton 2018-08-19 09:40:36 +00:00
error_index_generator Remove global derive_id and reset_ids functions 2018-07-31 17:55:12 -06:00
linkchecker Bump to 1.27.0 2018-04-02 12:42:44 -07:00
lld@f76ea3ca16 Update LLVM submodule to 7.0 2018-08-04 17:30:14 -07:00
lldb@3dbe998969 Add lldb to the build 2018-08-14 18:59:23 -06:00
miri@e6f1e15676 Update miri submodule 2018-07-29 20:24:26 +02:00
remote-test-client Add missing dyn 2018-07-25 10:55:35 +09:00
remote-test-server Remove explicit returns where unnecessary 2018-08-04 14:31:03 +02:00
rls@9e4d8d5203 Update RLS 2018-08-11 14:54:21 +08:00
rust-installer@27dec6cae3 Add lldb to the build 2018-08-14 18:59:23 -06:00
rustbook Update MDBook 2018-04-22 20:35:22 -05:00
rustc-workspace-hack Update Cargo submodule 2018-08-02 18:09:19 -07:00
rustdoc Rename rustdoc to use underscores 2018-05-17 08:47:25 -06:00
rustdoc-js reduce search-index size 2018-06-30 16:28:25 +02:00
rustdoc-themes Rename main theme into light theme 2018-03-29 13:45:56 +02:00
rustfmt@5c9a2b6c13 Update RLS and Rustfmt 2018-08-08 18:06:58 +12:00
tidy Use the new Entry::or_default method where possible. 2018-08-18 20:19:45 +03:00
unstable-book-gen Ensure every unstable feature has a tracking issue. 2018-05-27 14:22:35 +08:00
publish_toolstate.py Ping infra team on all tool bustage 2018-05-04 10:21:05 +12:00