[INFO] cloning repository https://github.com/slightlyoutofphase/staticvec [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/slightlyoutofphase/staticvec" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fslightlyoutofphase%2Fstaticvec", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fslightlyoutofphase%2Fstaticvec'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a3557755b9ee29238e98302cfab550a75675f339 [INFO] building slightlyoutofphase/staticvec against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fslightlyoutofphase%2Fstaticvec" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/slightlyoutofphase/staticvec on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/slightlyoutofphase/staticvec [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking git repo https://github.com/slightlyoutofphase/staticvec [INFO] tweaked toml for git repo https://github.com/slightlyoutofphase/staticvec written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 12 packages to latest compatible versions [INFO] [stderr] Adding cool_asserts v1.1.1 (available: v2.0.3) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cool_asserts v1.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 25f26f5949c4400773d2e32b97a1aefc86934b33177be683aba1e4892fb821e7 [INFO] running `Command { std: "docker" "start" "-a" "25f26f5949c4400773d2e32b97a1aefc86934b33177be683aba1e4892fb821e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "25f26f5949c4400773d2e32b97a1aefc86934b33177be683aba1e4892fb821e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "25f26f5949c4400773d2e32b97a1aefc86934b33177be683aba1e4892fb821e7", kill_on_drop: false }` [INFO] [stdout] 25f26f5949c4400773d2e32b97a1aefc86934b33177be683aba1e4892fb821e7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3564ca2c79c965e7c209ab9e08f855ebb3d9df4ea3a5a689cbcc4780bccfb7b0 [INFO] running `Command { std: "docker" "start" "-a" "3564ca2c79c965e7c209ab9e08f855ebb3d9df4ea3a5a689cbcc4780bccfb7b0", kill_on_drop: false }` [INFO] [stderr] Compiling staticvec v0.11.9 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `rustdoc` [INFO] [stdout] --> src/lib.rs:100:28 [INFO] [stdout] | [INFO] [stdout] 100 | #[cfg(any(feature = "std", rustdoc))] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(rustdoc)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(rustdoc)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `rustdoc` [INFO] [stdout] --> src/lib.rs:103:28 [INFO] [stdout] | [INFO] [stdout] 103 | #[cfg(any(feature = "std", rustdoc))] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(rustdoc)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(rustdoc)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `core_intrinsics` is internal to the compiler or standard library [INFO] [stdout] --> src/lib.rs:65:3 [INFO] [stdout] | [INFO] [stdout] 65 | core_intrinsics, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using it is strongly discouraged [INFO] [stdout] = note: `#[warn(internal_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `rustdoc` [INFO] [stdout] --> src/string/mod.rs:16:28 [INFO] [stdout] | [INFO] [stdout] 16 | #[cfg(all(feature = "std", rustdoc))] [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(rustdoc)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(rustdoc)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature `core_io_borrowed_buf` [INFO] [stdout] --> src/trait_impls.rs:32:21 [INFO] [stdout] | [INFO] [stdout] 32 | use std::io::{self, BorrowedCursor, BufRead, IoSlice, IoSliceMut, Read}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #117693 for more information [INFO] [stdout] = help: add `#![feature(core_io_borrowed_buf)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-12-19; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature `core_io_borrowed_buf` [INFO] [stdout] --> src/trait_impls.rs:893:38 [INFO] [stdout] | [INFO] [stdout] 893 | fn read_buf(&mut self, mut cursor: BorrowedCursor<'_>) -> io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #117693 for more information [INFO] [stdout] = help: add `#![feature(core_io_borrowed_buf)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-12-19; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_fn_floating_point_arithmetic` has been stable since 1.82.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:42:3 [INFO] [stdout] | [INFO] [stdout] 42 | const_fn_floating_point_arithmetic, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_mut_refs` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:53:3 [INFO] [stdout] | [INFO] [stdout] 53 | const_mut_refs, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_refs_to_cell` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:59:3 [INFO] [stdout] | [INFO] [stdout] 59 | const_refs_to_cell, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `inline_const` has been stable since 1.79.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:69:3 [INFO] [stdout] | [INFO] [stdout] 69 | inline_const, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_maybe_uninit_as_mut_ptr` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:48:3 [INFO] [stdout] | [INFO] [stdout] 48 | const_maybe_uninit_as_mut_ptr, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_maybe_uninit_assume_init` has been stable since 1.84.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:49:3 [INFO] [stdout] | [INFO] [stdout] 49 | const_maybe_uninit_assume_init, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_maybe_uninit_assume_init_read` has been stable since 1.75.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:50:3 [INFO] [stdout] | [INFO] [stdout] 50 | const_maybe_uninit_assume_init_read, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_maybe_uninit_zeroed` has been stable since 1.75.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:52:3 [INFO] [stdout] | [INFO] [stdout] 52 | const_maybe_uninit_zeroed, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_ptr_is_null` has been stable since 1.84.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:55:3 [INFO] [stdout] | [INFO] [stdout] 55 | const_ptr_is_null, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_ptr_write` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:56:3 [INFO] [stdout] | [INFO] [stdout] 56 | const_ptr_write, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_replace` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:60:3 [INFO] [stdout] | [INFO] [stdout] 60 | const_replace, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `const_slice_from_raw_parts_mut` has been stable since 1.83.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/lib.rs:62:3 [INFO] [stdout] | [INFO] [stdout] 62 | const_slice_from_raw_parts_mut, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_assume` [INFO] [stdout] --> src/lib.rs:33:3 [INFO] [stdout] | [INFO] [stdout] 33 | const_assume, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_maybe_uninit_array_assume_init` [INFO] [stdout] --> src/lib.rs:47:3 [INFO] [stdout] | [INFO] [stdout] 47 | const_maybe_uninit_array_assume_init, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_borrow` [INFO] [stdout] --> src/lib.rs:35:3 [INFO] [stdout] | [INFO] [stdout] 35 | const_borrow, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_clone` [INFO] [stdout] --> src/lib.rs:36:3 [INFO] [stdout] | [INFO] [stdout] 36 | const_clone, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_cmp` [INFO] [stdout] --> src/lib.rs:37:3 [INFO] [stdout] | [INFO] [stdout] 37 | const_cmp, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_convert` [INFO] [stdout] --> src/lib.rs:38:3 [INFO] [stdout] | [INFO] [stdout] 38 | const_convert, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_default_impls` [INFO] [stdout] --> src/lib.rs:39:3 [INFO] [stdout] | [INFO] [stdout] 39 | const_default_impls, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_deref` [INFO] [stdout] --> src/lib.rs:40:3 [INFO] [stdout] | [INFO] [stdout] 40 | const_deref, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_slice_index` [INFO] [stdout] --> src/lib.rs:61:3 [INFO] [stdout] | [INFO] [stdout] 61 | const_slice_index, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_hash` [INFO] [stdout] --> src/lib.rs:43:3 [INFO] [stdout] | [INFO] [stdout] 43 | const_hash, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_maybe_uninit_uninit_array` [INFO] [stdout] --> src/lib.rs:51:3 [INFO] [stdout] | [INFO] [stdout] 51 | const_maybe_uninit_uninit_array, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_index_range_slice_index` [INFO] [stdout] --> src/lib.rs:45:3 [INFO] [stdout] | [INFO] [stdout] 45 | const_index_range_slice_index, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_intoiterator_identity` [INFO] [stdout] --> src/lib.rs:46:3 [INFO] [stdout] | [INFO] [stdout] 46 | const_intoiterator_identity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:708:39 [INFO] [stdout] | [INFO] [stdout] 708 | impl<'a, T: 'a, const N: usize> const IntoIterator for &'a StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:719:39 [INFO] [stdout] | [INFO] [stdout] 719 | impl<'a, T: 'a, const N: usize> const IntoIterator for &'a mut StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:730:31 [INFO] [stdout] | [INFO] [stdout] 730 | impl const IntoIterator for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits [INFO] [stdout] --> src/lib.rs:1430:19 [INFO] [stdout] | [INFO] [stdout] 1430 | where T: Copy + ~const PartialOrd { [INFO] [stdout] | ^^^^^^ can't be applied to `PartialOrd` [INFO] [stdout] | [INFO] [stdout] note: `PartialOrd` can't be used with `~const` because it isn't annotated with `#[const_trait]` [INFO] [stdout] --> /rustc/11663cd3bfefef7d34e8f0892c250bf698049392/library/core/src/cmp.rs:1293:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Clone` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/heap/heap_trait_impls.rs:25:37 [INFO] [stdout] | [INFO] [stdout] 25 | impl const Clone for StaticHeap { [INFO] [stdout] | ^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Clone` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_trait_impls.rs:74:28 [INFO] [stdout] | [INFO] [stdout] 74 | impl const Clone for StaticString { [INFO] [stdout] | ^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Clone` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:112:37 [INFO] [stdout] | [INFO] [stdout] 112 | impl const Clone for StaticVec { [INFO] [stdout] | ^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Default` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/heap/heap_trait_impls.rs:47:36 [INFO] [stdout] | [INFO] [stdout] 47 | impl const Default for StaticHeap { [INFO] [stdout] | ^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Default` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_trait_impls.rs:106:28 [INFO] [stdout] | [INFO] [stdout] 106 | impl const Default for StaticString { [INFO] [stdout] | ^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Default` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:153:31 [INFO] [stdout] | [INFO] [stdout] 153 | impl const Default for StaticVec { [INFO] [stdout] | ^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/heap/heap_trait_impls.rs:199:31 [INFO] [stdout] | [INFO] [stdout] 199 | impl const IntoIterator for StaticHeap { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/heap/heap_trait_impls.rs:225:35 [INFO] [stdout] | [INFO] [stdout] 225 | impl<'a, T, const N: usize> const IntoIterator for &'a StaticHeap { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_errors.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | impl const From for StringError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_errors.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | impl const From for StringError { [INFO] [stdout] | ^^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_errors.rs:89:28 [INFO] [stdout] | [INFO] [stdout] 89 | impl const From> for StringError { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:362:37 [INFO] [stdout] | [INFO] [stdout] 362 | impl const From<&[T]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:371:37 [INFO] [stdout] | [INFO] [stdout] 371 | impl const From<&mut [T]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:389:31 [INFO] [stdout] | [INFO] [stdout] 389 | impl const From<[T; N]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:396:55 [INFO] [stdout] | [INFO] [stdout] 396 | impl const From<&[T; N1]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:405:37 [INFO] [stdout] | [INFO] [stdout] 405 | impl const From<&[T; N]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:414:55 [INFO] [stdout] | [INFO] [stdout] 414 | impl const From<&mut [T; N1]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `From` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:423:37 [INFO] [stdout] | [INFO] [stdout] 423 | impl const From<&mut [T; N]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `IntoIterator` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/heap/heap_trait_impls.rs:235:35 [INFO] [stdout] | [INFO] [stdout] 235 | impl<'a, T, const N: usize> const IntoIterator for &'a mut StaticHeap { [INFO] [stdout] | ^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: trait takes 0 lifetime arguments but 1 lifetime argument was supplied [INFO] [stdout] --> src/string/mod.rs:840:40 [INFO] [stdout] | [INFO] [stdout] 840 | pub fn remove_matches<'a, P: for<'x> Pattern<'x>>(&'a mut self, pat: P) { [INFO] [stdout] | ^^^^^^^---- help: remove the unnecessary generics [INFO] [stdout] | | [INFO] [stdout] | expected 0 lifetime arguments [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Borrow` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_trait_impls.rs:60:28 [INFO] [stdout] | [INFO] [stdout] 60 | impl const Borrow for StaticString { [INFO] [stdout] | ^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `Borrow` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:61:31 [INFO] [stdout] | [INFO] [stdout] 61 | impl const Borrow<[T]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `BorrowMut` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/string/string_trait_impls.rs:67:28 [INFO] [stdout] | [INFO] [stdout] 67 | impl const BorrowMut for StaticString { [INFO] [stdout] | ^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: const `impl` for trait `BorrowMut` which is not marked with `#[const_trait]` [INFO] [stdout] --> src/trait_impls.rs:68:31 [INFO] [stdout] | [INFO] [stdout] 68 | impl const BorrowMut<[T]> for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^ this trait is not `const` [INFO] [stdout] | [INFO] [stdout] = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` [INFO] [stdout] = note: adding a non-const method body in the future would be a breaking change [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `~const` can only be applied to `#[const_trait]` traits [INFO] [stdout] --> src/utils.rs:177:50 [INFO] [stdout] | [INFO] [stdout] 177 | pub(crate) const fn quicksort_internal( [INFO] [stdout] | ^^^^^^ can't be applied to `PartialOrd` [INFO] [stdout] | [INFO] [stdout] note: `PartialOrd` can't be used with `~const` because it isn't annotated with `#[const_trait]` [INFO] [stdout] --> /rustc/11663cd3bfefef7d34e8f0892c250bf698049392/library/core/src/cmp.rs:1293:1 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `str: ~const Deref` is not satisfied [INFO] [stdout] --> src/string/mod.rs:720:36 [INFO] [stdout] | [INFO] [stdout] 720 | assert!(str_is_char_boundary(self, new_len)); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `[T]: ~const Deref` is not satisfied [INFO] [stdout] --> src/trait_impls.rs:261:28 [INFO] [stdout] | [INFO] [stdout] 261 | self.extend_from_slice(iter); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `[T]: ~const Deref` is not satisfied [INFO] [stdout] --> src/trait_impls.rs:266:26 [INFO] [stdout] | [INFO] [stdout] 266 | Self::new_from_slice(iter) [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `[T]: ~const Deref` is not satisfied [INFO] [stdout] --> src/trait_impls.rs:273:28 [INFO] [stdout] | [INFO] [stdout] 273 | self.extend_from_slice(iter); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `[T]: ~const Deref` is not satisfied [INFO] [stdout] --> src/trait_impls.rs:278:26 [INFO] [stdout] | [INFO] [stdout] 278 | Self::new_from_slice(iter) [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature `core_io_borrowed_buf` [INFO] [stdout] --> src/trait_impls.rs:895:35 [INFO] [stdout] | [INFO] [stdout] 895 | let amount = const_min(cursor.capacity(), self.len()); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #117693 for more information [INFO] [stdout] = help: add `#![feature(core_io_borrowed_buf)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-12-19; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: use of unstable library feature `core_io_borrowed_buf` [INFO] [stdout] --> src/trait_impls.rs:897:12 [INFO] [stdout] | [INFO] [stdout] 897 | cursor.append(&self); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #117693 for more information [INFO] [stdout] = help: add `#![feature(core_io_borrowed_buf)]` to the crate attributes to enable [INFO] [stdout] = note: this compiler was built on 2024-12-19; consider upgrading it if it is out of date [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as Clone>::clone` in constant functions [INFO] [stdout] --> src/heap/heap_trait_impls.rs:29:23 [INFO] [stdout] | [INFO] [stdout] 29 | data: self.data.clone(), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as IntoIterator>::into_iter` in constant functions [INFO] [stdout] --> src/heap/heap_trait_impls.rs:221:15 [INFO] [stdout] | [INFO] [stdout] 221 | self.data.into_iter() [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as Clone>::clone` in constant functions [INFO] [stdout] --> src/string/string_trait_impls.rs:78:21 [INFO] [stdout] | [INFO] [stdout] 78 | vec: self.vec.clone(), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions [INFO] [stdout] --> src/trait_impls.rs:64:10 [INFO] [stdout] | [INFO] [stdout] 64 | &self[..] [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: impl defined here, but it is not `const` [INFO] [stdout] --> src/trait_impls.rs:605:1 [INFO] [stdout] | [INFO] [stdout] 605 | impl /*const*/ Index for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions [INFO] [stdout] --> src/trait_impls.rs:71:14 [INFO] [stdout] | [INFO] [stdout] 71 | &mut self[..] [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: impl defined here, but it is not `const` [INFO] [stdout] --> src/trait_impls.rs:615:1 [INFO] [stdout] | [INFO] [stdout] 615 | impl /*const*/ IndexMut for StaticVec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/utils.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 31 | 0 => unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/utils.rs:135:3 [INFO] [stdout] | [INFO] [stdout] 135 | unsafe { const_eval_select((ptr, count), compiletime_zst_ptr_add, runtime_zst_ptr_add) } [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/utils.rs:145:3 [INFO] [stdout] | [INFO] [stdout] 145 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions [INFO] [stdout] --> src/utils.rs:192:15 [INFO] [stdout] | [INFO] [stdout] 192 | while *values.offset(i) < p { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const operator in constant functions [INFO] [stdout] --> src/utils.rs:195:15 [INFO] [stdout] | [INFO] [stdout] 195 | while *values.offset(j) > p { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as Clone>::clone` in constant functions [INFO] [stdout] --> src/lib.rs:1434:19 [INFO] [stdout] | [INFO] [stdout] 1434 | return self.clone(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0015, E0107, E0277, E0635, E0658. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0015`. [INFO] [stdout] [INFO] [stderr] error: could not compile `staticvec` (lib) due to 59 previous errors; 19 warnings emitted [INFO] running `Command { std: "docker" "inspect" "3564ca2c79c965e7c209ab9e08f855ebb3d9df4ea3a5a689cbcc4780bccfb7b0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3564ca2c79c965e7c209ab9e08f855ebb3d9df4ea3a5a689cbcc4780bccfb7b0", kill_on_drop: false }` [INFO] [stdout] 3564ca2c79c965e7c209ab9e08f855ebb3d9df4ea3a5a689cbcc4780bccfb7b0