rust/library/core/src
bors 4e431fad67 Auto merge of #123561 - saethlin:str-unchecked-sub-index, r=scottmcm
Use unchecked_sub in str indexing

https://github.com/rust-lang/rust/pull/108763 applied this logic to indexing for slices, but of course `str` has its own separate impl.

Found this by skimming over the codegen for https://github.com/oxidecomputer/hubris/; their dist builds enable overflow checks so the lack of `unchecked_sub` was producing an impossible-to-hit overflow check and also inhibiting some inlining.

r? scottmcm
2024-04-07 12:49:15 +00:00
..
alloc SeqCst->Relaxed in doc examples. 2024-03-19 15:27:11 +01:00
array Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
ascii implement Default for AsciiChar 2024-02-13 12:04:44 +01:00
async_iter Hide async_gen_internals from standard library documentation 2024-04-05 18:54:38 -07:00
cell impl get_mut_or_init and get_mut_or_try_init for OnceCell and OnceLock 2024-03-27 16:16:08 +08:00
char Auto merge of #122616 - Jules-Bertholet:casemappingiter-layout, r=Nilstrieb 2024-03-29 07:02:56 +00:00
cmp Use generic NonZero everywhere in core. 2024-02-22 15:17:33 +01:00
convert Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
ffi step cfgs 2024-03-20 08:49:13 -04:00
fmt rename expose_addr to expose_provenance 2024-04-03 16:00:38 +02:00
future Use root obligation on E0277 for some cases 2024-03-03 18:53:35 +00:00
hash Add fn const BuildHasherDefault::new 2024-03-29 17:10:17 +01:00
intrinsics rename expose_addr to expose_provenance 2024-04-03 16:00:38 +02:00
io BorrowedCursor docs clarification 2024-03-10 09:48:56 +01:00
iter Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
macros Fix error message for env! when env var is not valid Unicode 2024-04-01 05:44:45 +01:00
mem Auto merge of #122582 - scottmcm:swap-intrinsic-v2, r=oli-obk 2024-03-23 13:57:55 +00:00
net Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
num Rollup merge of #123226 - scottmcm:u32-shifts, r=WaffleLapkin 2024-04-02 21:22:01 +02:00
ops Extract helper, fix comment on DerefPure 2024-03-25 19:39:45 -04:00
panic Rollup merge of #122291 - lilasta:stabilize_const_location_fields, r=dtolnay 2024-04-06 13:00:05 +02:00
prelude Remove RustcEncodable/Decodable from 2024 prelude 2024-03-22 13:30:48 -07:00
ptr Rollup merge of #123206 - stepancheg:pointee-metadata-freeze, r=Amanieu 2024-04-04 21:16:55 -04:00
slice Auto merge of #122945 - andy-k:sorted-vec-example, r=jhpratt 2024-04-02 03:14:05 +00:00
str Use unchecked_sub in str indexing 2024-04-06 14:09:03 -04:00
sync Stabilize const Atomic*::into_inner 2024-04-05 16:04:07 -07:00
task set tracking issue 2024-04-02 15:45:53 -07:00
unicode Bump Unicode printables to version 15.1, align to unicode_data 2024-03-28 11:21:52 +01:00
any.rs Improve wording in std::any explanation 2024-03-29 10:10:52 -07:00
arch.rs Rust is a proper name: rust → Rust 2024-03-07 07:49:22 +01:00
ascii.rs Use generic NonZero internally. 2024-02-15 08:09:42 +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 doc: replace wrong punctuation mark 2023-07-28 14:46:17 +02:00
cell.rs Stabilize const Atomic*::into_inner 2024-04-05 16:04:07 -07:00
clone.rs Put basic impls for f16 and f128 behind cfg(not(bootstrap)) 2024-04-02 16:19:55 -04:00
cmp.rs Auto merge of #123390 - tgross35:f16-f128-libs-basic-impls-bootstrap, r=jhpratt 2024-04-03 12:32:34 +00:00
default.rs Add basic trait impls for f16 and f128 2024-03-28 15:02:51 -04:00
error.md Fix minor grammar typo 2023-09-06 09:47:22 -07:00
error.rs style library/core/src/error.rs 2024-03-02 16:03:23 +08:00
escape.rs Use generic NonZero internally. 2024-02-15 08:09:42 +01:00
hint.rs move assert_unsafe_preconditions to its own file 2024-03-23 18:44:17 +01:00
internal_macros.rs add track_caller for arith ops 2023-11-24 00:54:06 +08:00
intrinsics.rs Put checks that detect UB under their own flag below debug_assertions 2024-04-06 11:21:47 -04:00
lib.miri.rs add 'x.py miri', and make it work for 'library/{core,alloc,std}' 2024-04-03 20:27:20 +02:00
lib.rs Rollup merge of #123541 - RalfJung:remove-old-hacks, r=Mark-Simulacrum 2024-04-06 17:37:39 +02:00
marker.rs Put basic impls for f16 and f128 behind cfg(not(bootstrap)) 2024-04-02 16:19:55 -04:00
option.rs Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
panic.rs Distinguish between library and lang UB in assert_unsafe_precondition 2024-03-08 18:53:58 -05:00
panicking.rs core/panicking: fix outdated comment 2024-03-23 21:36:22 +01:00
pin.rs chore: fix some comments 2024-03-27 22:32:53 +08:00
primitive.rs
primitive_docs.rs Use generic NonZero everywhere in core. 2024-02-22 15:17:33 +01:00
result.rs Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00
time.rs Implement Duration::as_millis_{f64,f32} 2024-03-14 01:37:12 +03:00
tuple.rs Rollup merge of #118307 - scottmcm:tuple-eq-simpler, r=joshtriplett 2024-02-11 08:25:41 +01:00
ub_checks.rs refactor check_{lang,library}_ub: use a single intrinsic, put policy into library 2024-03-23 18:45:05 +01:00
unit.rs Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00