[INFO] fetching crate astral-string 0.0.5...
[INFO] checking astral-string-0.0.5 against try#47af3d0de9d26c7deba4cfb203b710cc3f764e91 for pr-130443
[INFO] extracting crate astral-string 0.0.5 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate astral-string 0.0.5 on toolchain 47af3d0de9d26c7deba4cfb203b710cc3f764e91
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate astral-string 0.0.5
[INFO] finished tweaking crates.io crate astral-string 0.0.5
[INFO] tweaked toml for crates.io crate astral-string 0.0.5 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 38 packages to latest compatible versions
[INFO] [stderr]       Adding rustc_version v0.2.3 (available: v0.4.1)
[INFO] [stderr]       Adding semver v0.9.0 (available: v1.0.23)
[INFO] [stderr]       Adding semver-parser v0.7.0 (available: v0.10.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 818cf5a982bbb44f63c7e1c7073fbe141e68090658d20fcad97652b01d8ee14d
[INFO] running `Command { std: "docker" "start" "-a" "818cf5a982bbb44f63c7e1c7073fbe141e68090658d20fcad97652b01d8ee14d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "818cf5a982bbb44f63c7e1c7073fbe141e68090658d20fcad97652b01d8ee14d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "818cf5a982bbb44f63c7e1c7073fbe141e68090658d20fcad97652b01d8ee14d", kill_on_drop: false }`
[INFO] [stdout] 818cf5a982bbb44f63c7e1c7073fbe141e68090658d20fcad97652b01d8ee14d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 42f611dbe5edf05f773e8dd8a3f492b8ad1ce18306f2734f8b19852c327ffa70
[INFO] running `Command { std: "docker" "start" "-a" "42f611dbe5edf05f773e8dd8a3f492b8ad1ce18306f2734f8b19852c327ffa70", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]    Compiling slog v2.7.0
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking astral-util v0.0.5
[INFO] [stderr]     Checking astral-error v0.0.5
[INFO] [stderr]     Checking astral-math v0.0.3
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling syn v2.0.77
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]     Checking astral-thirdparty v0.0.2
[INFO] [stderr]     Checking astral-string v0.0.5
[INFO] [stderr]     Checking astral-string v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: valid forms for the attribute are `#[doc(hidden|inline|...)]` and `#[doc = "string"]`
[INFO] [stdout]    --> src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[doc]
[INFO] [stdout]     | ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #57571 <https://github.com/rust-lang/rust/issues/57571>
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:128:2
[INFO] [stdout]     |
[INFO] [stdout] 128 |     future_incompatible,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ill_formed_attribute_input)]` implied by `#[warn(future_incompatible)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `unstable`
[INFO] [stdout]   --> src/allocator.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |     #[cfg(not(unstable))]
[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(unstable)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(unstable)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> 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: `unstable`
[INFO] [stdout]   --> src/allocator.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 |     #[cfg(unstable)]
[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(unstable)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(unstable)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/allocator.rs:43:17
[INFO] [stdout]     |
[INFO] [stdout] 43  |             PAGE_SIZE >= mem::size_of::<Entry>(),
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:144:2
[INFO] [stdout]     |
[INFO] [stdout] 144 |     unused_qualifications,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 43  -             PAGE_SIZE >= mem::size_of::<Entry>(),
[INFO] [stdout] 43  +             PAGE_SIZE >= size_of::<Entry>(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 |             mem::size_of::<Entry>()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 47 -             mem::size_of::<Entry>()
[INFO] [stdout] 47 +             size_of::<Entry>()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:50:62
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>());
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 50 -             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>());
[INFO] [stdout] 50 +             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, align_of::<Entry>());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let remainder = addr % mem::align_of::<Entry>();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 65 -         let remainder = addr % mem::align_of::<Entry>();
[INFO] [stdout] 65 +         let remainder = addr % align_of::<Entry>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 |             mem::align_of::<Entry>() - remainder
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 69 -             mem::align_of::<Entry>() - remainder
[INFO] [stdout] 69 +             align_of::<Entry>() - remainder
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/allocator.rs:107:51
[INFO] [stdout]     |
[INFO] [stdout] 107 |                     Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>()),
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 107 -                     Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>()),
[INFO] [stdout] 107 +                     Layout::from_size_align_unchecked(PAGE_SIZE, align_of::<Entry>()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/entry.rs:26:43
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(super) const DATA_OFFSET: usize = 6 + mem::size_of::<AtomicPtr<Entry>>();
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub(super) const DATA_OFFSET: usize = 6 + mem::size_of::<AtomicPtr<Entry>>();
[INFO] [stdout] 26 + pub(super) const DATA_OFFSET: usize = 6 + size_of::<AtomicPtr<Entry>>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> src/entry_hash_table.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/entry_hash_table.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let used_memory = mem::size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 42 -         let used_memory = mem::size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout] 42 +         let used_memory = size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:560:9
[INFO] [stdout]     |
[INFO] [stdout] 560 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:567:9
[INFO] [stdout]     |
[INFO] [stdout] 567 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> src/static_ref_vector.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/static_ref_vector.rs:27:46
[INFO] [stdout]    |
[INFO] [stdout] 27 | const ELEMENTS_PER_PAGE: usize = 64 * 1024 / mem::size_of::<usize>();
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - const ELEMENTS_PER_PAGE: usize = 64 * 1024 / mem::size_of::<usize>();
[INFO] [stdout] 27 + const ELEMENTS_PER_PAGE: usize = 64 * 1024 / size_of::<usize>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/static_ref_vector.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let memory = mem::size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 54 -         let memory = mem::size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout] 54 +         let memory = size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/static_ref_vector.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 mem::size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 mem::size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout] 108 +                 size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize`, `Ordering`, and `self`
[INFO] [stdout]    --> src/subsystem.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout] 21  |         atomic::{self, AtomicUsize, Ordering},
[INFO] [stdout]     |                  ^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:132:2
[INFO] [stdout]     |
[INFO] [stdout] 132 |     unused,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: `#[warn(unused_imports)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 499 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/entry_hash_table.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 |         let (mut entry, alloc_memory, alloc_chunks) = if string.len() > MAX_STRING_LENGTH {
[INFO] [stdout]    |              ----^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking astral-engine v0.0.3
[INFO] [stdout] warning: 24 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: valid forms for the attribute are `#[doc(hidden|inline|...)]` and `#[doc = "string"]`
[INFO] [stdout]    --> src/lib.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | #[doc]
[INFO] [stdout]     | ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #57571 <https://github.com/rust-lang/rust/issues/57571>
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:128:2
[INFO] [stdout]     |
[INFO] [stdout] 128 |     future_incompatible,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(ill_formed_attribute_input)]` implied by `#[warn(future_incompatible)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `unstable`
[INFO] [stdout]   --> src/allocator.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 |     #[cfg(not(unstable))]
[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(unstable)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(unstable)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> 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: `unstable`
[INFO] [stdout]   --> src/allocator.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 |     #[cfg(unstable)]
[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(unstable)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(unstable)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/allocator.rs:43:17
[INFO] [stdout]     |
[INFO] [stdout] 43  |             PAGE_SIZE >= mem::size_of::<Entry>(),
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:144:2
[INFO] [stdout]     |
[INFO] [stdout] 144 |     unused_qualifications,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 43  -             PAGE_SIZE >= mem::size_of::<Entry>(),
[INFO] [stdout] 43  +             PAGE_SIZE >= size_of::<Entry>(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 |             mem::size_of::<Entry>()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 47 -             mem::size_of::<Entry>()
[INFO] [stdout] 47 +             size_of::<Entry>()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:50:62
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>());
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 50 -             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>());
[INFO] [stdout] 50 +             let layout = Layout::from_size_align_unchecked(PAGE_SIZE, align_of::<Entry>());
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let remainder = addr % mem::align_of::<Entry>();
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 65 -         let remainder = addr % mem::align_of::<Entry>();
[INFO] [stdout] 65 +         let remainder = addr % align_of::<Entry>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/allocator.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 |             mem::align_of::<Entry>() - remainder
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 69 -             mem::align_of::<Entry>() - remainder
[INFO] [stdout] 69 +             align_of::<Entry>() - remainder
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/allocator.rs:107:51
[INFO] [stdout]     |
[INFO] [stdout] 107 |                     Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>()),
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 107 -                     Layout::from_size_align_unchecked(PAGE_SIZE, mem::align_of::<Entry>()),
[INFO] [stdout] 107 +                     Layout::from_size_align_unchecked(PAGE_SIZE, align_of::<Entry>()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/entry.rs:26:43
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(super) const DATA_OFFSET: usize = 6 + mem::size_of::<AtomicPtr<Entry>>();
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 26 - pub(super) const DATA_OFFSET: usize = 6 + mem::size_of::<AtomicPtr<Entry>>();
[INFO] [stdout] 26 + pub(super) const DATA_OFFSET: usize = 6 + size_of::<AtomicPtr<Entry>>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> src/entry_hash_table.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/entry_hash_table.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let used_memory = mem::size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 42 -         let used_memory = mem::size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout] 42 +         let used_memory = size_of::<AtomicPtr<Entry>>() * NUM_BUCKETS;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:527:9
[INFO] [stdout]     |
[INFO] [stdout] 527 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:560:9
[INFO] [stdout]     |
[INFO] [stdout] 560 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/name.rs:567:9
[INFO] [stdout]     |
[INFO] [stdout] 567 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/name.rs:728:14
[INFO] [stdout]     |
[INFO] [stdout] 728 |         assert_eq!(std::mem::size_of::<Name<'_>>(), 16);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 728 -         assert_eq!(std::mem::size_of::<Name<'_>>(), 16);
[INFO] [stdout] 728 +         assert_eq!(size_of::<Name<'_>>(), 16);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/name.rs:729:14
[INFO] [stdout]     |
[INFO] [stdout] 729 |         assert_eq!(std::mem::size_of::<Option<Name<'_>>>(), 16);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 729 -         assert_eq!(std::mem::size_of::<Option<Name<'_>>>(), 16);
[INFO] [stdout] 729 +         assert_eq!(size_of::<Option<Name<'_>>>(), 16);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> src/static_ref_vector.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/static_ref_vector.rs:27:46
[INFO] [stdout]    |
[INFO] [stdout] 27 | const ELEMENTS_PER_PAGE: usize = 64 * 1024 / mem::size_of::<usize>();
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 27 - const ELEMENTS_PER_PAGE: usize = 64 * 1024 / mem::size_of::<usize>();
[INFO] [stdout] 27 + const ELEMENTS_PER_PAGE: usize = 64 * 1024 / size_of::<usize>();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/static_ref_vector.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |         let memory = mem::size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 54 -         let memory = mem::size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout] 54 +         let memory = size_of::<UnsafeCell<Option<Page<T>>>>() * needed_pages;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/static_ref_vector.rs:108:5
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 mem::size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 108 -                 mem::size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout] 108 +                 size_of::<Option<*const T>>() * ELEMENTS_PER_PAGE,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]   --> src/string_id.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 |         assert_eq!(std::mem::size_of::<StringId>(), 4);
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]    |
[INFO] [stdout] 72 -         assert_eq!(std::mem::size_of::<StringId>(), 4);
[INFO] [stdout] 72 +         assert_eq!(size_of::<StringId>(), 4);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicUsize`, `Ordering`, and `self`
[INFO] [stdout]    --> src/subsystem.rs:21:12
[INFO] [stdout]     |
[INFO] [stdout] 21  |         atomic::{self, AtomicUsize, Ordering},
[INFO] [stdout]     |                  ^^^^  ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:132:2
[INFO] [stdout]     |
[INFO] [stdout] 132 |     unused,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     = note: `#[warn(unused_imports)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]    --> src/text.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 499 | #[allow(box_pointers)]
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/text.rs:668:14
[INFO] [stdout]     |
[INFO] [stdout] 668 |         assert_eq!(std::mem::size_of::<Text<'_>>(), 16);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 668 -         assert_eq!(std::mem::size_of::<Text<'_>>(), 16);
[INFO] [stdout] 668 +         assert_eq!(size_of::<Text<'_>>(), 16);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary qualification
[INFO] [stdout]    --> src/text.rs:669:14
[INFO] [stdout]     |
[INFO] [stdout] 669 |         assert_eq!(std::mem::size_of::<Option<Text<'_>>>(), 16);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove the unnecessary path segments
[INFO] [stdout]     |
[INFO] [stdout] 669 -         assert_eq!(std::mem::size_of::<Option<Text<'_>>>(), 16);
[INFO] [stdout] 669 +         assert_eq!(size_of::<Option<Text<'_>>>(), 16);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/entry_hash_table.rs:86:8
[INFO] [stdout]    |
[INFO] [stdout] 86 |         let (mut entry, alloc_memory, alloc_chunks) = if string.len() > MAX_STRING_LENGTH {
[INFO] [stdout]    |              ----^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` implied by `#[warn(unused)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 29 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.54s
[INFO] running `Command { std: "docker" "inspect" "42f611dbe5edf05f773e8dd8a3f492b8ad1ce18306f2734f8b19852c327ffa70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "42f611dbe5edf05f773e8dd8a3f492b8ad1ce18306f2734f8b19852c327ffa70", kill_on_drop: false }`
[INFO] [stdout] 42f611dbe5edf05f773e8dd8a3f492b8ad1ce18306f2734f8b19852c327ffa70
