rust/library
Julian Frimmel 60a9d5a5a9 Re-enable copy[_nonoverlapping]() runtime checks
This commit re-enables the debug checks for valid usages of the two
functions `copy()` and `copy_nonoverlapping()`. Those checks were com-
mented out in #79684 in order to make the functions const. All that's
been left was a FIXME, that could not be resolved until there is was way
to only do the checks at runtime.
Since #89247 there is such a way: `const_eval_select()`. This commit
uses that new intrinsic in order to either do nothing (at compile time)
or to do the old checks (at runtime).

The change itself is rather small: in order to make the checks usable
with `const_eval_select`, they are moved into a local function (one for
`copy` and one for `copy_nonoverlapping` to keep symmetry).

The change does not break referential transparency, as there is nothing
you can do at compile time, which you cannot do on runtime without get-
ting undefined behavior. The CTFE-engine won't allow missuses. The other
way round is also fine.
2021-11-09 10:02:09 +01:00
..
alloc Fix str::SplitInclusive stabilisation date 2021-11-05 17:46:58 +10:00
backtrace@b02ed04a7e Updated backtrace submodule 2021-11-02 12:31:34 +01:00
core Re-enable copy[_nonoverlapping]() runtime checks 2021-11-09 10:02:09 +01:00
panic_abort Add SOLID targets 2021-09-28 11:31:47 +09:00
panic_unwind Add SOLID targets 2021-09-28 11:31:47 +09:00
proc_macro Append .0 to unsuffixed float if it would otherwise become int token 2021-10-25 20:30:47 -07:00
profiler_builtins rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
rtstartup Bump bootstrap compiler to 1.50 beta 2020-12-30 09:27:19 -05:00
rustc-std-workspace-alloc rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
rustc-std-workspace-core rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
rustc-std-workspace-std rfc3052: Remove authors field from Cargo manifests 2021-07-29 14:56:05 -07:00
std Auto merge of #89310 - joshtriplett:available-concurrency-affinity, r=m-ou-se 2021-11-07 11:53:25 +00:00
stdarch@5fdbc476af Update stdarch submodule 2021-09-21 11:24:08 +02:00
test clippy::perf fixes 2021-11-04 21:07:56 +01:00
unwind Repace use of static_nobundle with native_link_modifiers 2021-10-23 15:51:22 +02:00