[INFO] cloning repository https://github.com/sendyhalim/tcp-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sendyhalim/tcp-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsendyhalim%2Ftcp-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsendyhalim%2Ftcp-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e1a5e64aa5e6af10998a71dd807e581644e2fa34 [INFO] checking sendyhalim/tcp-rust against master#7dc9ff5c629753b6930ecfe9a0446538b8e25fb7 for pr-85387 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsendyhalim%2Ftcp-rust" "/workspace/builds/worker-3/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/sendyhalim/tcp-rust on toolchain 7dc9ff5c629753b6930ecfe9a0446538b8e25fb7 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7dc9ff5c629753b6930ecfe9a0446538b8e25fb7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/sendyhalim/tcp-rust [INFO] finished tweaking git repo https://github.com/sendyhalim/tcp-rust [INFO] tweaked toml for git repo https://github.com/sendyhalim/tcp-rust written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/sendyhalim/tcp-rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7dc9ff5c629753b6930ecfe9a0446538b8e25fb7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+7dc9ff5c629753b6930ecfe9a0446538b8e25fb7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4e8fdc6927ed81865a5ae02e99bbef6b30065e5210882b4cf8354a4fb4a50cb8 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "4e8fdc6927ed81865a5ae02e99bbef6b30065e5210882b4cf8354a4fb4a50cb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4e8fdc6927ed81865a5ae02e99bbef6b30065e5210882b4cf8354a4fb4a50cb8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4e8fdc6927ed81865a5ae02e99bbef6b30065e5210882b4cf8354a4fb4a50cb8", kill_on_drop: false }` [INFO] [stdout] 4e8fdc6927ed81865a5ae02e99bbef6b30065e5210882b4cf8354a4fb4a50cb8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+7dc9ff5c629753b6930ecfe9a0446538b8e25fb7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 946273a2f2a4555fb34a2ea9ed93b42a57d4092ed3dd4a629e496da3c97241a0 [INFO] running `Command { std: "docker" "start" "-a" "946273a2f2a4555fb34a2ea9ed93b42a57d4092ed3dd4a629e496da3c97241a0", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.95 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Checking futures v0.1.31 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling anyhow v1.0.40 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling memoffset v0.6.4 [INFO] [stderr] Compiling tun-tap v0.1.2 [INFO] [stderr] Checking etherparse v0.8.3 [INFO] [stderr] Checking log v0.4.14 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Checking smallvec v0.6.14 [INFO] [stderr] Checking crossbeam-queue v0.2.3 [INFO] [stderr] Checking crossbeam-deque v0.7.3 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Checking tokio-executor v0.1.10 [INFO] [stderr] Checking tokio-sync v0.1.8 [INFO] [stderr] Checking tokio-current-thread v0.1.7 [INFO] [stderr] Checking tokio-timer v0.2.13 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking net2 v0.2.37 [INFO] [stderr] Checking nix v0.21.0 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Checking tokio-threadpool v0.1.18 [INFO] [stderr] Checking mio v0.6.23 [INFO] [stderr] Checking tokio-io v0.1.13 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking tokio-reactor v0.1.12 [INFO] [stderr] Checking tokio-codec v0.1.2 [INFO] [stderr] Checking tokio-fs v0.1.7 [INFO] [stderr] Checking tokio-udp v0.1.6 [INFO] [stderr] Checking tokio-tcp v0.1.4 [INFO] [stderr] Checking tokio-uds v0.2.7 [INFO] [stderr] Checking tokio v0.1.22 [INFO] [stderr] Checking tokio-core v0.1.18 [INFO] [stderr] Checking tcp-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0425]: cannot find value `payload` in this scope [INFO] [stdout] --> src/tcp.rs:505:74 [INFO] [stdout] | [INFO] [stdout] 505 | self.tcph.header_len() as usize + self.iph.header_len() as usize + payload.len(), [INFO] [stdout] | ^^^^^^^ help: a local variable with a similar name exists: `payload1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `unwritten` in this scope [INFO] [stdout] --> src/tcp.rs:531:18 [INFO] [stdout] | [INFO] [stdout] 531 | written += unwritten.write(&payload1[..p1l])?; [INFO] [stdout] | ^^^^^^^^^ help: a local variable with a similar name exists: `written` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `unwritten` in this scope [INFO] [stdout] --> src/tcp.rs:535:18 [INFO] [stdout] | [INFO] [stdout] 535 | written += unwritten.write(&payload2[..p2l])?; [INFO] [stdout] | ^^^^^^^^^ help: a local variable with a similar name exists: `written` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `payload` in this scope [INFO] [stdout] --> src/tcp.rs:505:74 [INFO] [stdout] | [INFO] [stdout] 505 | self.tcph.header_len() as usize + self.iph.header_len() as usize + payload.len(), [INFO] [stdout] | ^^^^^^^ help: a local variable with a similar name exists: `payload1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `unwritten` in this scope [INFO] [stdout] --> src/tcp.rs:531:18 [INFO] [stdout] | [INFO] [stdout] 531 | written += unwritten.write(&payload1[..p1l])?; [INFO] [stdout] | ^^^^^^^^^ help: a local variable with a similar name exists: `written` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `unwritten` in this scope [INFO] [stdout] --> src/tcp.rs:535:18 [INFO] [stdout] | [INFO] [stdout] 535 | written += unwritten.write(&payload2[..p2l])?; [INFO] [stdout] | ^^^^^^^^^ help: a local variable with a similar name exists: `written` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot multiply `{float}` by `Duration` [INFO] [stdout] --> src/tcp.rs:247:71 [INFO] [stdout] | [INFO] [stdout] 247 | if waited_for > time::Duration::from_secs(1) && waited_for > (1.5 * self.timers.srtt) { [INFO] [stdout] | ^ no implementation for `{float} * Duration` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Mul` is not implemented for `{float}` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:255:24 [INFO] [stdout] | [INFO] [stdout] 255 | if resend_size < self.send.wnd && self.closed { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `self.send.wnd.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:269:37 [INFO] [stdout] | [INFO] [stdout] 269 | let allowed = self.send.wnd - unacked_count; [INFO] [stdout] | ^^^^^^^^^^^^^ expected `u16`, found `u32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract `u32` from `u16` [INFO] [stdout] --> src/tcp.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | let allowed = self.send.wnd - unacked_count; [INFO] [stdout] | ^ no implementation for `u16 - u32` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sub` is not implemented for `u16` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:275:46 [INFO] [stdout] | [INFO] [stdout] 275 | let send_count = std::cmp::min(unsent, allowed); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `allowed.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:277:23 [INFO] [stdout] | [INFO] [stdout] 277 | if send_count < allowed && self.closed && self.closed_at.is_none() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `allowed.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `tcp` on type `&mut tcp::TcpConnection` [INFO] [stdout] --> src/tcp.rs:278:14 [INFO] [stdout] | [INFO] [stdout] 278 | self.tcp.fin = true; [INFO] [stdout] | ^^^ help: a field with a similar name exists: `tcph` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 5 arguments but 3 arguments were supplied [INFO] [stdout] --> src/tcp.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 287 | self.write( [INFO] [stdout] | ^^^^^ expected 5 arguments [INFO] [stdout] 288 | nic, [INFO] [stdout] | --- [INFO] [stdout] 289 | self.send.nxt, [INFO] [stdout] | ------------- [INFO] [stdout] 290 | &self.outgoing[unacked_count..(unacked_count + send_count)], [INFO] [stdout] | ----------------------------------------------------------- supplied 3 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/tcp.rs:488:6 [INFO] [stdout] | [INFO] [stdout] 488 | fn write( [INFO] [stdout] | ^^^^^ [INFO] [stdout] 489 | &mut self, [INFO] [stdout] | --------- [INFO] [stdout] 490 | nic: &tun_tap::Iface, [INFO] [stdout] | -------------------- [INFO] [stdout] 491 | seq_of_first_byte: u32, [INFO] [stdout] | ---------------------- [INFO] [stdout] 492 | payload1: &[u8], [INFO] [stdout] | --------------- [INFO] [stdout] 493 | payload2: &[u8], [INFO] [stdout] | --------------- [INFO] [stdout] 494 | limit: usize, [INFO] [stdout] | ------------ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | &self.outgoing[unacked_count..(unacked_count + send_count)], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `usize`, found struct `std::ops::Range` [INFO] [stdout] | [INFO] [stdout] = note: expected type `usize` [INFO] [stdout] found struct `std::ops::Range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot multiply `{float}` by `Duration` [INFO] [stdout] --> src/tcp.rs:247:71 [INFO] [stdout] | [INFO] [stdout] 247 | if waited_for > time::Duration::from_secs(1) && waited_for > (1.5 * self.timers.srtt) { [INFO] [stdout] | ^ no implementation for `{float} * Duration` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Mul` is not implemented for `{float}` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:255:24 [INFO] [stdout] | [INFO] [stdout] 255 | if resend_size < self.send.wnd && self.closed { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `self.send.wnd.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:269:37 [INFO] [stdout] | [INFO] [stdout] 269 | let allowed = self.send.wnd - unacked_count; [INFO] [stdout] | ^^^^^^^^^^^^^ expected `u16`, found `u32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: cannot subtract `u32` from `u16` [INFO] [stdout] --> src/tcp.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | let allowed = self.send.wnd - unacked_count; [INFO] [stdout] | ^ no implementation for `u16 - u32` [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sub` is not implemented for `u16` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:275:46 [INFO] [stdout] | [INFO] [stdout] 275 | let send_count = std::cmp::min(unsent, allowed); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `allowed.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:277:23 [INFO] [stdout] | [INFO] [stdout] 277 | if send_count < allowed && self.closed && self.closed_at.is_none() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected `u32`, found `u16` [INFO] [stdout] | help: you can convert a `u16` to a `u32`: `allowed.into()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0609]: no field `tcp` on type `&mut tcp::TcpConnection` [INFO] [stdout] --> src/tcp.rs:278:14 [INFO] [stdout] | [INFO] [stdout] 278 | self.tcp.fin = true; [INFO] [stdout] | ^^^ help: a field with a similar name exists: `tcph` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 5 arguments but 3 arguments were supplied [INFO] [stdout] --> src/tcp.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 287 | self.write( [INFO] [stdout] | ^^^^^ expected 5 arguments [INFO] [stdout] 288 | nic, [INFO] [stdout] | --- [INFO] [stdout] 289 | self.send.nxt, [INFO] [stdout] | ------------- [INFO] [stdout] 290 | &self.outgoing[unacked_count..(unacked_count + send_count)], [INFO] [stdout] | ----------------------------------------------------------- supplied 3 arguments [INFO] [stdout] | [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> src/tcp.rs:488:6 [INFO] [stdout] | [INFO] [stdout] 488 | fn write( [INFO] [stdout] | ^^^^^ [INFO] [stdout] 489 | &mut self, [INFO] [stdout] | --------- [INFO] [stdout] 490 | nic: &tun_tap::Iface, [INFO] [stdout] | -------------------- [INFO] [stdout] 491 | seq_of_first_byte: u32, [INFO] [stdout] | ---------------------- [INFO] [stdout] 492 | payload1: &[u8], [INFO] [stdout] | --------------- [INFO] [stdout] 493 | payload2: &[u8], [INFO] [stdout] | --------------- [INFO] [stdout] 494 | limit: usize, [INFO] [stdout] | ------------ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/tcp.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 12 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0425, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `tcp-rust` [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tcp.rs:290:24 [INFO] [stdout] | [INFO] [stdout] 290 | &self.outgoing[unacked_count..(unacked_count + send_count)], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `usize`, found struct `std::ops::Range` [INFO] [stdout] | [INFO] [stdout] = note: expected type `usize` [INFO] [stdout] found struct `std::ops::Range` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/tcp.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 12 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0425, E0609. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "946273a2f2a4555fb34a2ea9ed93b42a57d4092ed3dd4a629e496da3c97241a0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "946273a2f2a4555fb34a2ea9ed93b42a57d4092ed3dd4a629e496da3c97241a0", kill_on_drop: false }` [INFO] [stdout] 946273a2f2a4555fb34a2ea9ed93b42a57d4092ed3dd4a629e496da3c97241a0