[INFO] cloning repository https://github.com/AntidermisMC/rlox
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AntidermisMC/rlox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAntidermisMC%2Frlox", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAntidermisMC%2Frlox'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f7d577532277d461ccac4f73650bdb65c4243e4e
[INFO] testing AntidermisMC/rlox against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAntidermisMC%2Frlox" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AntidermisMC/rlox
[INFO] finished tweaking git repo https://github.com/AntidermisMC/rlox
[INFO] tweaked toml for git repo https://github.com/AntidermisMC/rlox written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AntidermisMC/rlox on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AntidermisMC/rlox 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c4470feb0584070826fdec5fee3329169658d7bc425c16187eab2c6e0ad6ee03
[INFO] running `Command { std: "docker" "start" "-a" "c4470feb0584070826fdec5fee3329169658d7bc425c16187eab2c6e0ad6ee03", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4470feb0584070826fdec5fee3329169658d7bc425c16187eab2c6e0ad6ee03", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4470feb0584070826fdec5fee3329169658d7bc425c16187eab2c6e0ad6ee03", kill_on_drop: false }`
[INFO] [stdout] c4470feb0584070826fdec5fee3329169658d7bc425c16187eab2c6e0ad6ee03
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9a74f8773f48e9d1996c35893f170e9ec96f1ae495eb6451b6e64b6f3d8e8ae6
[INFO] running `Command { std: "docker" "start" "-a" "9a74f8773f48e9d1996c35893f170e9ec96f1ae495eb6451b6e64b6f3d8e8ae6", kill_on_drop: false }`
[INFO] [stderr]    Compiling rlox v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: methods `is_one_line`, `lines`, and `get_repr` are never used
[INFO] [stdout]   --> src/code_span.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl CodeSpan {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn is_one_line(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn lines(&self) -> std::ops::Range<usize> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn get_repr(&self, source: Vec<&str>) -> String {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `File` is never constructed
[INFO] [stdout]  --> src/eval/output_stream.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum OutputStream {
[INFO] [stdout]   |          ------------ variant in this enum
[INFO] [stdout] 7 |     File(String),
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `1` and `2` are never read
[INFO] [stdout]   --> src/eval/runtime_error.rs:22:31
[INFO] [stdout]    |
[INFO] [stdout] 22 |     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stdout]    |     ---------------           ^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuntimeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 22 -     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stdout] 22 +     MismatchedTypes(CodeSpan, (), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `peek_location` and `peek_location_2` are never used
[INFO] [stdout]   --> src/location_tracking_iterator.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl<T: Iterator<Item = char>> LocationTrackingIterator<T> {
[INFO] [stdout]    | ---------------------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn peek_location(&mut self) -> Option<Location> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn peek_location_2(&mut self) -> Option<Location> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing/parsing_error.rs:12:29
[INFO] [stdout]    |
[INFO] [stdout] 12 |     InvalidAssignmentTarget(CodeSpan),
[INFO] [stdout]    |     ----------------------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     InvalidAssignmentTarget(CodeSpan),
[INFO] [stdout] 12 +     InvalidAssignmentTarget(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing/parsing_error.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |     TooManyArguments(CodeSpan),
[INFO] [stdout]    |     ---------------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     TooManyArguments(CodeSpan),
[INFO] [stdout] 13 +     TooManyArguments(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_pos` is never used
[INFO] [stdout]   --> src/scanning/token/token_stream.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl<'a> TokenStream<'a> {
[INFO] [stdout]    | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn set_pos(&mut self, pos: Position) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/ast/types.rs:114:85
[INFO] [stdout]     |
[INFO] [stdout] 114 |             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stdout]     |                                                                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 114 -             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stdout] 114 +             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => std::ptr::fn_addr_eq(*f1, *f2),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.30s
[INFO] running `Command { std: "docker" "inspect" "9a74f8773f48e9d1996c35893f170e9ec96f1ae495eb6451b6e64b6f3d8e8ae6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9a74f8773f48e9d1996c35893f170e9ec96f1ae495eb6451b6e64b6f3d8e8ae6", kill_on_drop: false }`
[INFO] [stdout] 9a74f8773f48e9d1996c35893f170e9ec96f1ae495eb6451b6e64b6f3d8e8ae6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 70b959e977504c002fba472b9d6c389792590b032b8d4b484bffa1e1883c2472
[INFO] running `Command { std: "docker" "start" "-a" "70b959e977504c002fba472b9d6c389792590b032b8d4b484bffa1e1883c2472", kill_on_drop: false }`
[INFO] [stderr]    Compiling rlox v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: methods `is_one_line`, `lines`, and `get_repr` are never used
[INFO] [stdout]   --> src/code_span.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl CodeSpan {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn is_one_line(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn lines(&self) -> std::ops::Range<usize> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn get_repr(&self, source: Vec<&str>) -> String {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `1` and `2` are never read
[INFO] [stdout]   --> src/eval/runtime_error.rs:22:31
[INFO] [stdout]    |
[INFO] [stdout] 22 |     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stdout]    |     ---------------           ^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RuntimeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 22 -     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stdout] 22 +     MismatchedTypes(CodeSpan, (), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing/parsing_error.rs:12:29
[INFO] [stdout]    |
[INFO] [stdout] 12 |     InvalidAssignmentTarget(CodeSpan),
[INFO] [stdout]    |     ----------------------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 12 -     InvalidAssignmentTarget(CodeSpan),
[INFO] [stdout] 12 +     InvalidAssignmentTarget(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/parsing/parsing_error.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 |     TooManyArguments(CodeSpan),
[INFO] [stdout]    |     ---------------- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     TooManyArguments(CodeSpan),
[INFO] [stdout] 13 +     TooManyArguments(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/ast/types.rs:114:85
[INFO] [stdout]     |
[INFO] [stdout] 114 |             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stdout]     |                                                                                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 114 -             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stdout] 114 +             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => std::ptr::fn_addr_eq(*f1, *f2),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.25s
[INFO] running `Command { std: "docker" "inspect" "70b959e977504c002fba472b9d6c389792590b032b8d4b484bffa1e1883c2472", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "70b959e977504c002fba472b9d6c389792590b032b8d4b484bffa1e1883c2472", kill_on_drop: false }`
[INFO] [stdout] 70b959e977504c002fba472b9d6c389792590b032b8d4b484bffa1e1883c2472
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 87ba8a88215dde5a2a3c976738db3e508de7658b8231ba92de8f0aecb125c32c
[INFO] running `Command { std: "docker" "start" "-a" "87ba8a88215dde5a2a3c976738db3e508de7658b8231ba92de8f0aecb125c32c", kill_on_drop: false }`
[INFO] [stderr] warning: methods `is_one_line`, `lines`, and `get_repr` are never used
[INFO] [stderr]   --> src/code_span.rs:18:12
[INFO] [stderr]    |
[INFO] [stderr] 12 | impl CodeSpan {
[INFO] [stderr]    | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub fn is_one_line(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     pub fn lines(&self) -> std::ops::Range<usize> {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn get_repr(&self, source: Vec<&str>) -> String {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `1` and `2` are never read
[INFO] [stderr]   --> src/eval/runtime_error.rs:22:31
[INFO] [stderr]    |
[INFO] [stderr] 22 |     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stderr]    |     ---------------           ^^^^  ^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     fields in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `RuntimeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]    |
[INFO] [stderr] 22 -     MismatchedTypes(CodeSpan, Type, HashSet<Type>),
[INFO] [stderr] 22 +     MismatchedTypes(CodeSpan, (), ()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/parsing/parsing_error.rs:12:29
[INFO] [stderr]    |
[INFO] [stderr] 12 |     InvalidAssignmentTarget(CodeSpan),
[INFO] [stderr]    |     ----------------------- ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 12 -     InvalidAssignmentTarget(CodeSpan),
[INFO] [stderr] 12 +     InvalidAssignmentTarget(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/parsing/parsing_error.rs:13:22
[INFO] [stderr]    |
[INFO] [stderr] 13 |     TooManyArguments(CodeSpan),
[INFO] [stderr]    |     ---------------- ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 13 -     TooManyArguments(CodeSpan),
[INFO] [stderr] 13 +     TooManyArguments(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stderr]    --> src/ast/types.rs:114:85
[INFO] [stderr]     |
[INFO] [stderr] 114 |             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stderr]     |                                                                                     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: the address of the same function can vary between different codegen units
[INFO] [stderr]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stderr]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stderr]     = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stderr] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stderr]     |
[INFO] [stderr] 114 -             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => f1 == f2,
[INFO] [stderr] 114 +             (ValueType::NativeFunction(f1, _), ValueType::NativeFunction(f2, _)) => std::ptr::fn_addr_eq(*f1, *f2),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `rlox` (bin "rlox" test) generated 5 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rlox-f8cb760ed53cea39)
[INFO] [stdout] 
[INFO] [stdout] running 103 tests
[INFO] [stdout] test eval::tests::blocks ... ok
[INFO] [stdout] test eval::tests::comparison_binary_operators ... ok
[INFO] [stdout] test eval::tests::complex_expressions ... ok
[INFO] [stdout] test eval::tests::class_print ... ok
[INFO] [stdout] test eval::tests::conditionals_else_true ... ok
[INFO] [stdout] test eval::tests::conjunction_operator_short_circuit ... ok
[INFO] [stdout] test eval::tests::conjunction_operator_simple ... ok
[INFO] [stdout] test eval::tests::conjunction_operator_do_not_convert_to_boolean ... ok
[INFO] [stdout] test eval::tests::arithmetic_binary_operators ... ok
[INFO] [stdout] test eval::tests::disjunction_operator_short_circuit ... ok
[INFO] [stdout] test eval::tests::disjunction_operator_simple ... ok
[INFO] [stdout] test eval::tests::disjunction_operator_do_not_convert_to_boolean ... ok
[INFO] [stdout] test eval::tests::equality_same_types ... ok
[INFO] [stdout] test eval::tests::for_loop ... ok
[INFO] [stdout] test eval::tests::function_call_args ... ok
[INFO] [stdout] test eval::tests::function_call_simple ... ok
[INFO] [stdout] test eval::tests::function_declaration_args ... ok
[INFO] [stdout] test eval::tests::function_call_body ... ok
[INFO] [stdout] test eval::tests::for_loop_omitted_fields ... ok
[INFO] [stdout] test eval::tests::function_declaration_body ... ok
[INFO] [stdout] test eval::tests::literals ... ok
[INFO] [stdout] test eval::tests::inequality_same_types ... ok
[INFO] [stdout] test eval::tests::function_declaration_simple ... ok
[INFO] [stdout] test eval::tests::native_function ... ok
[INFO] [stdout] test eval::tests::object_print ... ok
[INFO] [stdout] test eval::tests::object_get_set ... ok
[INFO] [stdout] test eval::tests::function_return ... ok
[INFO] [stdout] test eval::tests::rly_stupid ... ok
[INFO] [stdout] test eval::tests::scope ... ok
[INFO] [stdout] test eval::tests::unary ... ok
[INFO] [stdout] test eval::tests::string_concat ... ok
[INFO] [stdout] test eval::tests::variable_overwrite ... ok
[INFO] [stdout] test eval::tests::conditionals_true ... ok
[INFO] [stdout] test eval::tests::object_methods ... ok
[INFO] [stdout] test eval::tests::variable_shadowing ... ok
[INFO] [stdout] test eval::tests::variable_assignment ... ok
[INFO] [stdout] test eval::tests::conditionals_false ... ok
[INFO] [stdout] test eval::tests::variables ... ok
[INFO] [stdout] test eval::tests::simple_fibonacci ... ok
[INFO] [stdout] test parsing::declarations::tests::test_variable_declarations ... ok
[INFO] [stdout] test eval::tests::print ... ok
[INFO] [stdout] test parsing::expressions::tests::assignment ... ok
[INFO] [stdout] test eval::tests::conditionals_else_false ... ok
[INFO] [stdout] test eval::tests::objects_fields_over_methods ... ok
[INFO] [stdout] test eval::tests::function_naked_return ... ok
[INFO] [stdout] test eval::tests::variables_no_assignment ... ok
[INFO] [stdout] test eval::tests::while_loop_false ... ok
[INFO] [stdout] test parsing::expressions::tests::boolean_operators ... ok
[INFO] [stdout] test eval::tests::while_loop_many ... ok
[INFO] [stdout] test eval::tests::while_loop_once ... ok
[INFO] [stdout] test location_tracking_iterator::tests::locations_are_valid ... ok
[INFO] [stdout] test parsing::declarations::tests::test_class_declarations ... ok
[INFO] [stdout] test location_tracking_iterator::tests::next_returns_same_as_base_iterator ... ok
[INFO] [stdout] test location_tracking_iterator::tests::peek_1_and_2 ... ok
[INFO] [stdout] test parsing::declarations::tests::test_function_declarations ... ok
[INFO] [stdout] test parsing::expressions::tests::calls ... ok
[INFO] [stdout] test parsing::expressions::tests::comparison ... ok
[INFO] [stdout] test parsing::statements::tests::test_statement ... ok
[INFO] [stdout] test parsing::expressions::tests::equality ... ok
[INFO] [stdout] test parsing::expressions::tests::factor ... ok
[INFO] [stdout] test parsing::expressions::tests::gets ... ok
[INFO] [stdout] test parsing::expressions::tests::multiple_assignments ... ok
[INFO] [stdout] test parsing::expressions::tests::primary ... ok
[INFO] [stdout] test parsing::statements::tests::test_statements ... ok
[INFO] [stdout] test parsing::expressions::tests::sets ... ok
[INFO] [stdout] test parsing::statements::tests::test_while_loop ... ok
[INFO] [stdout] test parsing::expressions::tests::term ... ok
[INFO] [stdout] test parsing::expressions::tests::unary ... ok
[INFO] [stdout] test parsing::statements::tests::test_blocks ... ok
[INFO] [stdout] test parsing::statements::tests::test_conditionals ... ok
[INFO] [stdout] test parsing::statements::tests::test_for_loop ... ok
[INFO] [stdout] test parsing::statements::tests::test_print_statements ... ok
[INFO] [stdout] test parsing::statements::tests::test_return ... ok
[INFO] [stdout] test parsing::tests::multiple_statements ... ok
[INFO] [stdout] test scanning::tests::all_operators ... ok
[INFO] [stdout] test scanning::tests::all_reserved_word ... ok
[INFO] [stdout] test scanning::tests::bang_equal_equal ... ok
[INFO] [stdout] test scanning::tests::empty_string ... ok
[INFO] [stdout] test scanning::tests::float ... ok
[INFO] [stdout] test scanning::tests::comment_in_between_code ... ok
[INFO] [stdout] test scanning::tests::empty ... ok
[INFO] [stdout] test scanning::tests::invalid_floats ... ok
[INFO] [stdout] test scanning::tests::many_identifiers ... ok
[INFO] [stdout] test scanning::tests::integer ... ok
[INFO] [stdout] test scanning::tests::maximal_munch ... ok
[INFO] [stdout] test scanning::tests::number_literal_method_call ... ok
[INFO] [stdout] test scanning::tests::one_operator ... ok
[INFO] [stdout] test scanning::tests::only_string ... ok
[INFO] [stdout] test scanning::tests::only_whitespace ... ok
[INFO] [stdout] test scanning::tests::reserved_word ... ok
[INFO] [stdout] test scanning::tests::identifier ... ok
[INFO] [stdout] test scanning::tests::only_comment ... ok
[INFO] [stdout] test scanning::tests::unterminated_string ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::peek ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::eof_peek_then_next ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::save_load ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::next ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::set_pos_then_back ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::single_back ... ok
[INFO] [stdout] test scanning::tests::two_char_operator ... ok
[INFO] [stdout] test scanning::tests::whitespace_between_ops ... ok
[INFO] [stdout] test scanning::tests::string_and_operator ... ok
[INFO] [stdout] test scanning::token::token_stream::tests::back_from_start - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 103 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "87ba8a88215dde5a2a3c976738db3e508de7658b8231ba92de8f0aecb125c32c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "87ba8a88215dde5a2a3c976738db3e508de7658b8231ba92de8f0aecb125c32c", kill_on_drop: false }`
[INFO] [stdout] 87ba8a88215dde5a2a3c976738db3e508de7658b8231ba92de8f0aecb125c32c
