[INFO] fetching crate oom 0.3.0... [INFO] building oom-0.3.0 against master#44f415c1d617ebc7b931a243b7b321ef8a6ca47c for pr-142134-abi-ast-error [INFO] extracting crate oom 0.3.0 into /workspace/builds/worker-3-tc1/source [INFO] validating manifest of crates.io crate oom 0.3.0 on toolchain 44f415c1d617ebc7b931a243b7b321ef8a6ca47c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate oom 0.3.0 [INFO] finished tweaking crates.io crate oom 0.3.0 [INFO] tweaked toml for crates.io crate oom 0.3.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 34 packages to latest compatible versions [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3657f19d5458bbc9e0be14042374483925146c25dca2abde9584ab32061c21b3 [INFO] running `Command { std: "docker" "start" "-a" "3657f19d5458bbc9e0be14042374483925146c25dca2abde9584ab32061c21b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3657f19d5458bbc9e0be14042374483925146c25dca2abde9584ab32061c21b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3657f19d5458bbc9e0be14042374483925146c25dca2abde9584ab32061c21b3", kill_on_drop: false }` [INFO] [stdout] 3657f19d5458bbc9e0be14042374483925146c25dca2abde9584ab32061c21b3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d7e03f73c293802b61a3cc341ba8f56f17e4a27118561367e6dbfe11ba2a921b [INFO] running `Command { std: "docker" "start" "-a" "d7e03f73c293802b61a3cc341ba8f56f17e4a27118561367e6dbfe11ba2a921b", kill_on_drop: false }` [INFO] [stderr] Compiling oom v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Clone> Clone for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Clone` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 29 | impl<'a, T: Copy> Copy for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Copy` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Eq> Eq for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 33 | impl<'a, T: PartialEq> PartialEq for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 39 | impl<'a, T: Ord> Ord for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 45 | impl<'a, T: PartialOrd> PartialOrd for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 51 | impl<'a, T> AsRef<[T]> for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Eq> Eq for NonEmptyMutSlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 25 | impl<'a, T: PartialEq> PartialEq for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Ord> Ord for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 37 | impl<'a, T: PartialOrd> PartialOrd for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 43 | impl<'a, T> AsRef<[T]> for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.26s [INFO] running `Command { std: "docker" "inspect" "d7e03f73c293802b61a3cc341ba8f56f17e4a27118561367e6dbfe11ba2a921b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7e03f73c293802b61a3cc341ba8f56f17e4a27118561367e6dbfe11ba2a921b", kill_on_drop: false }` [INFO] [stdout] d7e03f73c293802b61a3cc341ba8f56f17e4a27118561367e6dbfe11ba2a921b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 01c513ddfc2c7ff4b6d3de1d9dd4b384b733398c27e88a2f36a78125761a1ad3 [INFO] running `Command { std: "docker" "start" "-a" "01c513ddfc2c7ff4b6d3de1d9dd4b384b733398c27e88a2f36a78125761a1ad3", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling toml_write v0.1.2 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling winnow v0.7.10 [INFO] [stderr] Compiling target-triple v0.1.4 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling ryu v1.0.20 [INFO] [stderr] Compiling itoa v1.0.15 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Clone> Clone for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Clone` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 29 | impl<'a, T: Copy> Copy for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Copy` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Eq> Eq for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 33 | impl<'a, T: PartialEq> PartialEq for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 39 | impl<'a, T: Ord> Ord for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 45 | impl<'a, T: PartialOrd> PartialOrd for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 51 | impl<'a, T> AsRef<[T]> for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Eq> Eq for NonEmptyMutSlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 25 | impl<'a, T: PartialEq> PartialEq for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Ord> Ord for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 37 | impl<'a, T: PartialOrd> PartialOrd for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 43 | impl<'a, T> AsRef<[T]> for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling serde_spanned v0.6.9 [INFO] [stderr] Compiling toml_datetime v0.6.11 [INFO] [stderr] Compiling toml_edit v0.22.27 [INFO] [stderr] Compiling toml v0.8.23 [INFO] [stderr] Compiling trybuild v1.0.105 [INFO] [stderr] Compiling oom v0.3.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Clone> Clone for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^-----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Clone` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 29 | impl<'a, T: Copy> Copy for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^----^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Copy` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Eq> Eq for NonEmptySlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 33 | impl<'a, T: PartialEq> PartialEq for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 39 | impl<'a, T: Ord> Ord for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 45 | impl<'a, T: PartialOrd> PartialOrd for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/share.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 51 | impl<'a, T> AsRef<[T]> for NonEmptySlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^-------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptySlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] 23 | impl<'a, T: Eq> Eq for NonEmptyMutSlice<'a, T> {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^--^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Eq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 25 | impl<'a, T: PartialEq> PartialEq for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^---------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialEq` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 31 | impl<'a, T: Ord> Ord for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `Ord` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 37 | impl<'a, T: PartialOrd> PartialOrd for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^----------^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `PartialOrd` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/slice/unique.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 22 | const _BUILTIN_TRAITS: () = { [INFO] [stdout] | ------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | help: use a const-anon item to suppress this lint: `_` [INFO] [stdout] | move the `impl` block outside of this constant `_BUILTIN_TRAITS` [INFO] [stdout] ... [INFO] [stdout] 43 | impl<'a, T> AsRef<[T]> for NonEmptyMutSlice<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^-----^^^^^^^^^^----------------^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `NonEmptyMutSlice` is not local [INFO] [stdout] | `AsRef` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `oom::NonEmptyVec` [INFO] [stdout] --> tests/non_empty.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use oom::{NonEmptyMutSlice, NonEmptyVec}; [INFO] [stdout] | ^^^^^^^^^^^ no `NonEmptyVec` in the root [INFO] [stdout] | [INFO] [stdout] note: found an item that was configured out [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:24:14 [INFO] [stdout] | [INFO] [stdout] 24 | pub use vec::NonEmptyVec; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] note: the item is gated behind the `vec` feature [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | #[cfg(feature = "vec")] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `oom` (test "non_empty") due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "01c513ddfc2c7ff4b6d3de1d9dd4b384b733398c27e88a2f36a78125761a1ad3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "01c513ddfc2c7ff4b6d3de1d9dd4b384b733398c27e88a2f36a78125761a1ad3", kill_on_drop: false }` [INFO] [stdout] 01c513ddfc2c7ff4b6d3de1d9dd4b384b733398c27e88a2f36a78125761a1ad3