[INFO] fetching crate clroxide 1.1.1... [INFO] checking clroxide-1.1.1 against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] extracting crate clroxide 1.1.1 into /workspace/builds/worker-5-tc1/source [INFO] validating manifest of crates.io crate clroxide 1.1.1 on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate clroxide 1.1.1 [INFO] finished tweaking crates.io crate clroxide 1.1.1 [INFO] tweaked toml for crates.io crate clroxide 1.1.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate crates.io crate clroxide 1.1.1 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded windows v0.46.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6d517e2601a04a50fb5ce657a8e735b25ed5d2ff9c4ca308a62c5d91abc594f6 [INFO] running `Command { std: "docker" "start" "-a" "6d517e2601a04a50fb5ce657a8e735b25ed5d2ff9c4ca308a62c5d91abc594f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6d517e2601a04a50fb5ce657a8e735b25ed5d2ff9c4ca308a62c5d91abc594f6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6d517e2601a04a50fb5ce657a8e735b25ed5d2ff9c4ca308a62c5d91abc594f6", kill_on_drop: false }` [INFO] [stdout] 6d517e2601a04a50fb5ce657a8e735b25ed5d2ff9c4ca308a62c5d91abc594f6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 418491b4b07f01a896682f3e93fca27d2816aaae1639c12f32a69b082415e73f [INFO] running `Command { std: "docker" "start" "-a" "418491b4b07f01a896682f3e93fca27d2816aaae1639c12f32a69b082415e73f", kill_on_drop: false }` [INFO] [stderr] Checking windows-targets v0.42.2 [INFO] [stderr] Checking windows v0.46.0 [INFO] [stderr] Checking clroxide v1.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `mem::size_of` and `slice` [INFO] [stdout] --> examples/patch_exit.rs:2:33 [INFO] [stdout] | [INFO] [stdout] 2 | use std::{env, ffi::c_void, fs, mem::size_of, process::exit, ptr, slice}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VARIANT_0_0_0` and `VARIANT` [INFO] [stdout] --> examples/patch_exit.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | Com::{VARIANT, VARIANT_0_0_0}, [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> examples/patch_exit.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | /// Get the assemblies we need [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 26 | let mut context = clr.get_context()?; [INFO] [stdout] | ------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> examples/patch_exit.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | /// Get all the necessary pieces to reach the function pointer for System.Environment.Exit [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 31 | let environment = (*mscorlib).get_type("System.Environment")?; [INFO] [stdout] | -------------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> examples/patch_exit.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | /// Get the actual pointer value [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 42 | let mut base_ptr = pointer_variant.Anonymous.Anonymous.Anonymous.byref; [INFO] [stdout] | ----------------------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:45:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 45 | let console = unsafe { (*mscorlib).get_type("System.Console")? }; [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] --> examples/streaming_output.rs:46:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 46 | let get_out = unsafe { (*console).get_method("get_Out")? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 47 | let set_out = unsafe { (*console).get_method("SetOut")? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:48:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 48 | let old_out = unsafe { (*get_out).invoke_without_args(None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:49:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 49 | let get_err = unsafe { (*console).get_method("get_Error")? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:50:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 50 | let set_err = unsafe { (*console).get_method("SetError")? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:51:23 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 51 | let old_err = unsafe { (*get_err).invoke_without_args(None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 55 | unsafe { (*set_out).invoke(method_args, None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 56 | unsafe { (*set_err).invoke(method_args, None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:58:18 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 58 | let ad = unsafe { &*app_domain }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:61:34 [INFO] [stdout] | [INFO] [stdout] 61 | let assembly = match unsafe { ad.load_assembly(&contents) } { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:66:21 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 66 | let _ = unsafe { (*assembly).run_entrypoint(&args) }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 92 | unsafe { (*set_out).invoke(wrap_method_arguments(vec![old_out])?, None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> examples/streaming_output.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe { [INFO] [stdout] | ------ because it's nested under this `unsafe` block [INFO] [stdout] ... [INFO] [stdout] 93 | unsafe { (*set_err).invoke(wrap_method_arguments(vec![old_err])?, None)? }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/streaming_output.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let mut context = clr.get_context()?; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/patch_exit.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | let mut context = clr.get_context()?; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/patch_exit.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let mut base_ptr = pointer_variant.Anonymous.Anonymous.Anonymous.byref; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/patch_exit.rs:43:9 [INFO] [stdout] | [INFO] [stdout] 43 | let mut exit_ptr = pointer_variant.Anonymous.Anonymous.Anonymous.byref; [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/compose_clr.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | let mut context = clr.get_context()?; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.32s [INFO] running `Command { std: "docker" "inspect" "418491b4b07f01a896682f3e93fca27d2816aaae1639c12f32a69b082415e73f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "418491b4b07f01a896682f3e93fca27d2816aaae1639c12f32a69b082415e73f", kill_on_drop: false }` [INFO] [stdout] 418491b4b07f01a896682f3e93fca27d2816aaae1639c12f32a69b082415e73f