rust/library/core/src
Matthias Krüger 3ecae2932c
Rollup merge of #110706 - scottmcm:transmute_unchecked, r=oli-obk
Add `intrinsics::transmute_unchecked`

This takes a whole 3 lines in `compiler/` since it lowers to `CastKind::Transmute` in MIR *exactly* the same as the existing `intrinsics::transmute` does, it just doesn't have the fancy checking in `hir_typeck`.

Added to enable experimenting with the request in <https://github.com/rust-lang/rust/pull/106281#issuecomment-1496648190> and because the portable-simd folks might be interested for dependently-sized array-vector conversions.

It also simplifies a couple places in `core`.

See also https://github.com/rust-lang/rust/pull/108442#issuecomment-1474777273, where `CastKind::Transmute` was added having exactly these semantics before the lang meeting (which I wasn't in) independently expressed interest.
2023-04-24 07:53:25 +02:00
..
alloc core is now compilable 2023-04-16 07:20:26 +00:00
array Add intrinsics::transmute_unchecked 2023-04-22 17:22:03 -07:00
async_iter use consistent terminology 2022-10-29 09:23:12 +02:00
cell rm const traits in libcore 2023-04-16 06:49:27 +00:00
char rm const traits in libcore 2023-04-16 06:49:27 +00:00
cmp Merge two different equality specialization traits in core 2023-03-01 14:42:06 -08:00
convert rm const traits in libcore 2023-04-16 06:49:27 +00:00
ffi fix tidy 2023-04-16 07:27:28 +00:00
fmt Add reason to #![unstable] tag. 2023-04-20 19:38:33 +02:00
future Remove identity_future indirection 2023-03-08 15:37:14 +01:00
hash core is now compilable 2023-04-16 07:20:26 +00:00
intrinsics Rollup merge of #110154 - DaniPopes:library-typos, r=JohnTitor 2023-04-14 21:11:12 +02:00
iter rm const traits in libcore 2023-04-16 06:49:27 +00:00
macros Remove #[alloc_error_handler] from the compiler and library 2023-04-16 08:35:50 -07:00
mem Add intrinsics::transmute_unchecked 2023-04-22 17:22:03 -07:00
net remove some unneeded imports 2023-04-12 19:27:18 +02:00
num Implement Neg for signed non-zero integers. 2023-04-20 14:27:29 +09:00
ops Auto merge of #110393 - fee1-dead-contrib:rm-const-traits, r=oli-obk 2023-04-19 13:03:40 +00:00
panic Rollup merge of #110110 - lukas-code:display-panic-info, r=JohnTitor 2023-04-14 21:11:12 +02:00
prelude Remove #[alloc_error_handler] from the compiler and library 2023-04-16 08:35:50 -07:00
ptr Auto merge of #110393 - fee1-dead-contrib:rm-const-traits, r=oli-obk 2023-04-19 13:03:40 +00:00
slice Rollup merge of #110635 - scottmcm:zst-checks, r=the8472 2023-04-22 10:33:57 +09:00
str core is now compilable 2023-04-16 07:20:26 +00:00
sync rm const traits in libcore 2023-04-16 06:49:27 +00:00
task rm const traits in libcore 2023-04-16 06:49:27 +00:00
unicode Use hex literal for INDEX_MASK 2023-03-21 09:59:47 +01:00
any.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
arch.rs move core::arch into separate file 2022-11-20 10:28:14 +01:00
ascii.rs Inline <EscapeDefault as Iterator>::next 2022-03-10 15:35:22 +01:00
asserting.rs [RFC 2011] Library code 2022-05-22 07:18:32 -03:00
bool.rs core is now compilable 2023-04-16 07:20:26 +00:00
borrow.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
cell.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
clone.rs core is now compilable 2023-04-16 07:20:26 +00:00
cmp.rs Rollup merge of #110448 - ripytide:master, r=cuviper 2023-04-20 17:03:24 +09:00
default.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
error.md Small round of typo fixes 2022-11-04 20:06:18 -07:00
error.rs Bump to latest beta 2023-03-15 08:55:22 -04:00
hint.rs Fix grammar 2023-04-22 15:58:44 +01:00
internal_macros.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
intrinsics.rs Add intrinsics::transmute_unchecked 2023-04-22 17:22:03 -07:00
lib.rs readd const_trait to Drop, Destruct, and Fn* 2023-04-16 09:25:23 +00:00
marker.rs readd const_trait to Drop, Destruct, and Fn* 2023-04-16 09:25:23 +00:00
option.rs core is now compilable 2023-04-16 07:20:26 +00:00
panic.rs Replace libstd, libcore, liballoc in docs. 2022-12-30 14:00:40 +01:00
panicking.rs Auto merge of #98112 - saethlin:mir-alignment-checks, r=oli-obk 2023-03-31 08:50:35 +00:00
pin.rs Beautify pin! docs 2023-03-16 18:03:23 +01:00
primitive.rs mv std libs to library/ 2020-07-27 19:51:13 -05:00
primitive_docs.rs remove some unneeded imports 2023-04-12 19:27:18 +02:00
result.rs core is now compilable 2023-04-16 07:20:26 +00:00
time.rs Use fmt::Alignment instead of fmt::rt::v1::Alignment. 2023-04-20 18:03:47 +02:00
tuple.rs rm const traits in libcore 2023-04-16 06:49:27 +00:00
unit.rs Use implicit capture syntax in format_args 2022-03-10 10:23:40 -05:00