rust/library/core/src
bors b8c8287a22 Auto merge of #132479 - compiler-errors:fx-feat-yeet, r=fee1-dead
Yeet the `effects` feature, move it onto `const_trait_impl`

This PR merges the `effects` feature into the `const_trait_impl` feature. There's really no need to have two feature gates for one feature.

After this PR, if `const_trait_impl` **is** enabled:
* Users can use and define const traits
* `HostEffect` const conditions will be enforced on the HIR
* We re-check the predicates in MIR just to make sure that we don't "leak" anything during MIR lowering

And if `const_trait_impl` **is not** enabled:
* Users cannot use nor define const traits
* `HostEffect` const conditions are not enforced on the HIR
* We will raise a const validation error if we call a function that has any const conditions (i.e. const traits and functions with any `~const` in their where clasues)

This should be the last step for us to be able to enable const traits in the standard library. We still need to re-constify `Drop` and `Destruct` and stuff for const traits to be particularly *useful* for some cases, but this is a good step :D

r? fee1-dead
cc `@rust-lang/project-const-traits`
2024-11-03 19:41:46 +00:00
..
alloc make const_alloc_layout feature gate only about functions that are already stable 2024-11-01 14:32:59 +01:00
array Auto merge of #132458 - RalfJung:rustc-const-unstable, r=Amanieu 2024-11-03 02:32:48 +00:00
ascii Add more precondition check tests 2024-10-09 19:34:27 -04:00
async_iter Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
cell Re-do recursive const stability checks 2024-10-25 20:31:40 +02:00
char Auto merge of #132542 - RalfJung:const_panic, r=tgross35 2024-11-03 16:20:51 +00:00
clone CloneToUninit: use a private specialization trait 2024-07-29 20:44:43 +03:00
cmp Use generic NonZero everywhere in core. 2024-02-22 15:17:33 +01:00
convert Fix doc nits 2024-07-26 13:26:33 +01:00
ffi Rename the FIXMEs, remove a few that dont matter anymore 2024-11-03 18:59:41 +00:00
fmt stabilize const_arguments_as_str 2024-11-03 07:49:24 +01:00
future Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
hash remove const_hash feature leftovers 2024-11-02 11:27:14 +01:00
intrinsics library: consistently use American spelling for 'behavior' 2024-10-25 12:02:47 +02:00
io Fix doc nits 2024-07-26 13:26:33 +01:00
iter Remove do_not_const_check from Iterator methods 2024-10-30 19:24:34 +00:00
macros add const_panic macro to make it easier to fall back to non-formatting panic in const 2024-11-03 08:58:43 +01:00
mem get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
net get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
num Auto merge of #132542 - RalfJung:const_panic, r=tgross35 2024-11-03 16:20:51 +00:00
ops Rename the FIXMEs, remove a few that dont matter anymore 2024-11-03 18:59:41 +00:00
panic stabilize const_arguments_as_str 2024-11-03 07:49:24 +01:00
prelude Avoid comments that describe multiple use items. 2024-07-17 08:02:46 +10:00
ptr get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
range Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
slice Auto merge of #132479 - compiler-errors:fx-feat-yeet, r=fee1-dead 2024-11-03 19:41:46 +00:00
str Auto merge of #132458 - RalfJung:rustc-const-unstable, r=Amanieu 2024-11-03 02:32:48 +00:00
sync get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
task get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
unicode Rollup merge of #132499 - RalfJung:unicode_data.rs, r=tgross35 2024-11-03 12:08:51 +01:00
any.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
arch.rs update bootstrap configs 2024-10-15 20:30:23 -07:00
ascii.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
asserting.rs Reformat use declarations. 2024-07-29 08:26:52 +10:00
bool.rs [Clippy] Swap filter_map_bool_then to use diagnostic item instead of path 2024-09-19 13:13:42 +01:00
borrow.rs Suggest borrowing on fn argument that is impl AsRef 2024-05-09 23:25:31 +00:00
cell.rs New lint: dangling_pointers_from_temporaries 2024-10-28 14:16:05 +03:00
clone.rs update cfgs 2024-09-05 17:24:01 +01:00
cmp.rs library: consistently use American spelling for 'behavior' 2024-10-25 12:02:47 +02:00
default.rs update cfgs 2024-09-05 17:24:01 +01:00
error.md Mention core's PanicInfo in error.md. 2024-06-11 15:47:00 +02:00
error.rs Library: Rename "object safe" to "dyn compatible" 2024-10-09 18:48:29 +02:00
escape.rs Optimize escape_ascii 2024-10-09 17:17:50 -04:00
hint.rs Re-do recursive const stability checks 2024-10-25 20:31:40 +02:00
internal_macros.rs Fix doc nits 2024-07-26 13:26:33 +01:00
intrinsics.rs Auto merge of #131349 - RalfJung:const-stability-checks, r=compiler-errors 2024-10-25 23:29:40 +00: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 #132511 - RalfJung:const_arguments_as_str, r=dtolnay 2024-11-03 12:08:52 +01:00
marker.rs Auto merge of #131284 - dingxiangfei2009:rename-smart-ptr-to-coerce-referent, r=compiler-errors 2024-10-27 17:04:12 +00:00
option.rs library: consistently use American spelling for 'behavior' 2024-10-25 12:02:47 +02:00
panic.rs simplify abort_unwind 2024-09-15 14:27:24 -04:00
panicking.rs Re-do recursive const stability checks 2024-10-25 20:31:40 +02:00
pat.rs Add tracking issue to core-pattern-type 2024-08-07 20:43:05 -04:00
pin.rs Rename Receiver -> LegacyReceiver 2024-10-22 12:55:16 +00:00
primitive.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
primitive_docs.rs Make clearer that guarantees in ABI compatibility are for Rust only 2024-10-26 17:32:50 -04:00
random.rs random: add tracking issue, address other comments 2024-09-23 10:36:16 +02:00
range.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
result.rs update bootstrap configs 2024-10-15 20:30:23 -07:00
time.rs get rid of a whole bunch of unnecessary rustc_const_unstable attributes 2024-11-02 09:59:55 +01:00
tuple.rs update cfgs 2024-09-05 17:24:01 +01:00
ub_checks.rs Re-do recursive const stability checks 2024-10-25 20:31:40 +02:00
unit.rs Import the 2021 prelude in the core crate 2024-03-25 13:12:06 -07:00