rust/compiler
Matthias Krüger 5c10dbd85f
Rollup merge of #92704 - 5225225:std_mem_transmute_ref_t_mut_t, r=michaelwoerister
Change lint message to be stronger for &T -> &mut T transmute

The old message implied that it's only UB if you use the reference to mutate, which (as far as I know) is not true. As in, the following program has UB, and a &T -> &mut T transmute is effectively an `unreachable_unchecked`.

```rust
fn main() {
    #[allow(mutable_transmutes)]
    unsafe {
        let _ = std::mem::transmute::<&i32, &mut i32>(&0);
    }
}
```

In the future, it might be a good idea to use the edition system to make this a hard error, since I don't think it is *ever* defined behaviour? Unless we rule that `&UnsafeCell<i32> -> &mut i32` is fine. (That, and you always could just use `.get()`, so you're not losing anything)
2022-01-20 17:10:37 +01:00
..
rustc Remove useless #[global_allocator] from rustc and rustdoc. 2021-12-23 17:23:21 +11:00
rustc_apfloat Stabilize iter::zip. 2021-12-14 18:50:31 -04:00
rustc_arena
rustc_ast Rollup merge of #93018 - pierwill:rm-unused-ord, r=davidtwco 2022-01-18 22:00:50 +01:00
rustc_ast_lowering Formally implement let chains 2022-01-18 19:38:17 -03:00
rustc_ast_passes Formally implement let chains 2022-01-18 19:38:17 -03:00
rustc_ast_pretty Rollup merge of #93065 - dtolnay:ringbuffer, r=lcnr 2022-01-19 19:19:51 +01:00
rustc_attr Remove unnecessary sigils around Symbol::as_str() calls. 2021-12-15 17:32:14 +11:00
rustc_borrowck Use Term in ProjectionPredicate 2022-01-17 17:44:56 +00:00
rustc_builtin_macros Auto merge of #92816 - tmiasko:rm-llvm-asm, r=Amanieu 2022-01-17 09:40:29 +00:00
rustc_codegen_cranelift remove is_noop 2022-01-19 13:58:29 +01:00
rustc_codegen_gcc Use Symbol for target features in asm handling 2022-01-17 18:06:27 +01:00
rustc_codegen_llvm Rollup merge of #92425 - calebzulawski:simd-cast, r=workingjubilee 2022-01-18 22:00:45 +01:00
rustc_codegen_ssa Rollup merge of #91606 - joshtriplett:stabilize-print-link-args, r=pnkfelix 2022-01-20 17:10:32 +01:00
rustc_const_eval Auto merge of #92816 - tmiasko:rm-llvm-asm, r=Amanieu 2022-01-17 09:40:29 +00:00
rustc_data_structures Auto merge of #92740 - cuviper:update-rayons, r=Mark-Simulacrum 2022-01-16 08:12:23 +00:00
rustc_driver Rollup merge of #91606 - joshtriplett:stabilize-print-link-args, r=pnkfelix 2022-01-20 17:10:32 +01:00
rustc_error_codes Rollup merge of #92752 - jamestiotio:error-codes-typos, r=nagisa 2022-01-17 20:07:04 +01:00
rustc_errors Auto merge of #92070 - rukai:replace_vec_into_iter_with_array_into_iter, r=Mark-Simulacrum 2022-01-11 14:23:24 +00:00
rustc_expand Auto merge of #92473 - petrochenkov:ltrattr2, r=Aaron1011 2022-01-17 02:06:54 +00:00
rustc_feature Formally implement let chains 2022-01-18 19:38:17 -03:00
rustc_fs_util
rustc_graphviz eplace usages of vec![].into_iter with [].into_iter 2022-01-09 14:09:25 +11:00
rustc_hir NiceRegionError: Use written return type for async fn 2022-01-19 21:33:57 +00:00
rustc_hir_pretty Use Term in ProjectionPredicate 2022-01-17 17:44:56 +00:00
rustc_incremental Rollup merge of #92825 - pierwill:rustc-version-force-rename, r=Mark-Simulacrum 2022-01-17 20:07:06 +01:00
rustc_index remove unused FIXME 2022-01-12 16:09:01 +01:00
rustc_infer Simplify error reporting code, remove await point wording 2022-01-19 21:33:57 +00:00
rustc_interface Rollup merge of #91606 - joshtriplett:stabilize-print-link-args, r=pnkfelix 2022-01-20 17:10:32 +01:00
rustc_lexer
rustc_lint Rollup merge of #92704 - 5225225:std_mem_transmute_ref_t_mut_t, r=michaelwoerister 2022-01-20 17:10:37 +01:00
rustc_lint_defs Fix lints documents 2022-01-13 03:57:44 +00:00
rustc_llvm Remove LLVMRustMarkAllFunctionsNounwind 2022-01-14 00:36:12 +00:00
rustc_log Make rustc_log doc test runnable 2022-01-03 22:31:56 -08:00
rustc_macros Rollup merge of #92011 - Aaron1011:decode-span, r=michaelwoerister 2022-01-03 14:44:16 +01:00
rustc_metadata Rollup merge of #90782 - ricobbe:binutils-dlltool, r=michaelwoerister 2022-01-18 22:00:42 +01:00
rustc_middle Rollup merge of #92582 - lcnr:generic-arg-infer, r=BoxyUwU 2022-01-20 17:10:35 +01:00
rustc_mir_build Formally implement let chains 2022-01-18 19:38:17 -03:00
rustc_mir_dataflow Remove deprecated LLVM-style inline assembly 2022-01-12 18:51:31 +01:00
rustc_mir_transform Rollup merge of #89764 - tmiasko:uninhabited-enums, r=wesleywiser 2022-01-20 17:10:31 +01:00
rustc_monomorphize Auto merge of #92805 - BoxyUwU:revert-lazy-anon-const-substs, r=lcnr 2022-01-16 11:19:21 +00:00
rustc_parse Rollup merge of #91150 - dtolnay:qpath, r=davidtwco 2022-01-18 22:00:43 +01:00
rustc_parse_format
rustc_passes Rollup merge of #92783 - FabianWolff:issue-92726, r=nikomatsakis 2022-01-19 10:42:16 +01:00
rustc_plugin_impl
rustc_privacy Rollup merge of #92582 - lcnr:generic-arg-infer, r=BoxyUwU 2022-01-20 17:10:35 +01:00
rustc_query_impl attempt to re-add ty::Unevaluated visitor and friends 2022-01-15 01:16:55 +00:00
rustc_query_system Auto merge of #92740 - cuviper:update-rayons, r=Mark-Simulacrum 2022-01-16 08:12:23 +00:00
rustc_resolve Replace NestedVisitorMap with NestedFilter 2022-01-16 16:02:36 -06:00
rustc_save_analysis Replace NestedVisitorMap with NestedFilter 2022-01-16 16:02:36 -06:00
rustc_serialize Auto merge of #92604 - nnethercote:optimize-impl_read_unsigned_leb128, r=michaelwoerister 2022-01-15 07:27:30 +00:00
rustc_session Rollup merge of #91606 - joshtriplett:stabilize-print-link-args, r=pnkfelix 2022-01-20 17:10:32 +01:00
rustc_span Rollup merge of #92425 - calebzulawski:simd-cast, r=workingjubilee 2022-01-18 22:00:45 +01:00
rustc_symbol_mangling Rollup merge of #92316 - petrochenkov:extmangle, r=wesleywiser 2022-01-19 19:19:45 +01:00
rustc_target Pass target_features set instead of has_feature closure 2022-01-17 18:06:30 +01:00
rustc_trait_selection remove is_noop 2022-01-19 13:58:29 +01:00
rustc_traits Auto merge of #87648 - JulianKnodt:const_eq_constrain, r=oli-obk 2022-01-18 09:58:39 +00:00
rustc_ty_utils Auto merge of #92805 - BoxyUwU:revert-lazy-anon-const-substs, r=lcnr 2022-01-16 11:19:21 +00:00
rustc_type_ir initial revert 2022-01-15 01:16:55 +00:00
rustc_typeck Rollup merge of #92582 - lcnr:generic-arg-infer, r=BoxyUwU 2022-01-20 17:10:35 +01:00