[INFO] updating cached repository https://github.com/Valtis/YATCP [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 2ace4d84af4b1eabebe574fec30b17cada0e4817 [INFO] testing Valtis/YATCP against beta-2020-06-03 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FValtis%2FYATCP" "/workspace/builds/worker-7/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Valtis/YATCP on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/Valtis/YATCP [INFO] finished tweaking git repo https://github.com/Valtis/YATCP [INFO] tweaked toml for git repo https://github.com/Valtis/YATCP written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/Valtis/YATCP already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stdout] 1b45f4f737f2572ba6d5d6cf0374ae4085ec12298275ef8f546f3ff3e3790324 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "1b45f4f737f2572ba6d5d6cf0374ae4085ec12298275ef8f546f3ff3e3790324"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling libc v0.2.59 [INFO] [stderr] Compiling rayon-core v1.5.0 [INFO] [stderr] Compiling either v1.5.2 [INFO] [stderr] Compiling argparse v0.2.2 [INFO] [stderr] Compiling crossbeam-utils v0.6.5 [INFO] [stderr] Compiling crossbeam-epoch v0.7.1 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling crossbeam-deque v0.6.3 [INFO] [stderr] Compiling num_cpus v1.10.1 [INFO] [stderr] Compiling rayon v1.1.0 [INFO] [stderr] Compiling compiler v0.0.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/ssa_generator/mod.rs:217:13 [INFO] [stderr] | [INFO] [stderr] 217 | 'outer: for i in cfg.basic_blocks[block].start..cfg.basic_blocks[block].end { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/lexer/mod.rs:306:16 [INFO] [stderr] | [INFO] [stderr] 306 | if e.description().contains("too large to fit") { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 24.06s [INFO] running `"docker" "inspect" "1b45f4f737f2572ba6d5d6cf0374ae4085ec12298275ef8f546f3ff3e3790324"` [INFO] running `"docker" "rm" "-f" "1b45f4f737f2572ba6d5d6cf0374ae4085ec12298275ef8f546f3ff3e3790324"` [INFO] [stdout] 1b45f4f737f2572ba6d5d6cf0374ae4085ec12298275ef8f546f3ff3e3790324 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 22c7e1af31f32272c7d2d4516a60ece502e58e09deae114e84f66cce96afa0a0 [INFO] running `"docker" "start" "-a" "22c7e1af31f32272c7d2d4516a60ece502e58e09deae114e84f66cce96afa0a0"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling compiler v0.0.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/ssa_generator/mod.rs:217:13 [INFO] [stderr] | [INFO] [stderr] 217 | 'outer: for i in cfg.basic_blocks[block].start..cfg.basic_blocks[block].end { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/lexer/mod.rs:306:16 [INFO] [stderr] | [INFO] [stderr] 306 | if e.description().contains("too large to fit") { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::frontend::run_frontend` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use compiler::frontend::run_frontend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::middleend::run_middleend` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use compiler::middleend::run_middleend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::backend::run_backend` [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use compiler::backend::run_backend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::error_reporter::file_reporter::FileErrorReporter` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use compiler::error_reporter::file_reporter::FileErrorReporter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ArgumentParser`, `StoreFalse`, `StoreTrue`, `Store` [INFO] [stderr] --> src/main.rs:9:16 [INFO] [stderr] | [INFO] [stderr] 9 | use argparse::{ArgumentParser, StoreTrue, Store, StoreFalse}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 7 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/ssa_generator/mod.rs:217:13 [INFO] [stderr] | [INFO] [stderr] 217 | 'outer: for i in cfg.basic_blocks[block].start..cfg.basic_blocks[block].end { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/lexer/mod.rs:306:16 [INFO] [stderr] | [INFO] [stderr] 306 | if e.description().contains("too large to fit") { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3720:13 [INFO] [stderr] | [INFO] [stderr] 3720 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3789:13 [INFO] [stderr] | [INFO] [stderr] 3789 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3873:13 [INFO] [stderr] | [INFO] [stderr] 3873 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3965:13 [INFO] [stderr] | [INFO] [stderr] 3965 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4028:13 [INFO] [stderr] | [INFO] [stderr] 4028 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4102:13 [INFO] [stderr] | [INFO] [stderr] 4102 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4195:13 [INFO] [stderr] | [INFO] [stderr] 4195 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4364:13 [INFO] [stderr] | [INFO] [stderr] 4364 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4555:13 [INFO] [stderr] | [INFO] [stderr] 4555 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4650:13 [INFO] [stderr] | [INFO] [stderr] 4650 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4698:13 [INFO] [stderr] | [INFO] [stderr] 4698 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4748:13 [INFO] [stderr] | [INFO] [stderr] 4748 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4828:13 [INFO] [stderr] | [INFO] [stderr] 4828 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4904:13 [INFO] [stderr] | [INFO] [stderr] 4904 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4956:13 [INFO] [stderr] | [INFO] [stderr] 4956 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:5042:13 [INFO] [stderr] | [INFO] [stderr] 5042 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:5138:13 [INFO] [stderr] | [INFO] [stderr] 5138 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:5218:13 [INFO] [stderr] | [INFO] [stderr] 5218 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:5984:13 [INFO] [stderr] | [INFO] [stderr] 5984 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6081:13 [INFO] [stderr] | [INFO] [stderr] 6081 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6374:13 [INFO] [stderr] | [INFO] [stderr] 6374 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6960:13 [INFO] [stderr] | [INFO] [stderr] 6960 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:7502:13 [INFO] [stderr] | [INFO] [stderr] 7502 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: 25 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 19.41s [INFO] running `"docker" "inspect" "22c7e1af31f32272c7d2d4516a60ece502e58e09deae114e84f66cce96afa0a0"` [INFO] running `"docker" "rm" "-f" "22c7e1af31f32272c7d2d4516a60ece502e58e09deae114e84f66cce96afa0a0"` [INFO] [stdout] 22c7e1af31f32272c7d2d4516a60ece502e58e09deae114e84f66cce96afa0a0 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] f98a4ad386bc636005551f70802990d766f7d567cb36261357adaf785e99b25c [INFO] running `"docker" "start" "-a" "f98a4ad386bc636005551f70802990d766f7d567cb36261357adaf785e99b25c"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/ssa_generator/mod.rs:217:13 [INFO] [stderr] | [INFO] [stderr] 217 | 'outer: for i in cfg.basic_blocks[block].start..cfg.basic_blocks[block].end { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/lexer/mod.rs:306:16 [INFO] [stderr] | [INFO] [stderr] 306 | if e.description().contains("too large to fit") { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::frontend::run_frontend` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use compiler::frontend::run_frontend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::middleend::run_middleend` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use compiler::middleend::run_middleend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::backend::run_backend` [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use compiler::backend::run_backend; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `compiler::error_reporter::file_reporter::FileErrorReporter` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use compiler::error_reporter::file_reporter::FileErrorReporter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ArgumentParser`, `StoreFalse`, `StoreTrue`, `Store` [INFO] [stderr] --> src/main.rs:9:16 [INFO] [stderr] | [INFO] [stderr] 9 | use argparse::{ArgumentParser, StoreTrue, Store, StoreFalse}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 7 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused label [INFO] [stderr] --> src/ssa_generator/mod.rs:217:13 [INFO] [stderr] | [INFO] [stderr] 217 | 'outer: for i in cfg.basic_blocks[block].start..cfg.basic_blocks[block].end { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_labels)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> src/lexer/mod.rs:306:16 [INFO] [stderr] | [INFO] [stderr] 306 | if e.description().contains("too large to fit") { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3720:13 [INFO] [stderr] | [INFO] [stderr] 3720 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3789:13 [INFO] [stderr] | [INFO] [stderr] 3789 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3873:13 [INFO] [stderr] | [INFO] [stderr] 3873 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:3965:13 [INFO] [stderr] | [INFO] [stderr] 3965 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4028:13 [INFO] [stderr] | [INFO] [stderr] 4028 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4102:13 [INFO] [stderr] | [INFO] [stderr] 4102 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4195:13 [INFO] [stderr] | [INFO] [stderr] 4195 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4364:13 [INFO] [stderr] | [INFO] [stderr] 4364 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4555:13 [INFO] [stderr] | [INFO] [stderr] 4555 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4650:13 [INFO] [stderr] | [INFO] [stderr] 4650 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4698:13 [INFO] [stderr] | [INFO] [stderr] 4698 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4748:13 [INFO] [stderr] | [INFO] [stderr] 4748 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4828:13 [INFO] [stderr] | [INFO] [stderr] 4828 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:4904:13 [INFO] [stderr] | [INFO] [stderr] 4904 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:4956:13 [INFO] [stderr] | [INFO] [stderr] 4956 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:5042:13 [INFO] [stderr] | [INFO] [stderr] 5042 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/parser/mod.rs:5138:13 [INFO] [stderr] | [INFO] [stderr] 5138 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/parser/mod.rs:5218:13 [INFO] [stderr] | [INFO] [stderr] 5218 | let node = parser.parse(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:5984:13 [INFO] [stderr] | [INFO] [stderr] 5984 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6081:13 [INFO] [stderr] | [INFO] [stderr] 6081 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6374:13 [INFO] [stderr] | [INFO] [stderr] 6374 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:6960:13 [INFO] [stderr] | [INFO] [stderr] 6960 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `messages` [INFO] [stderr] --> src/semcheck/mod.rs:7502:13 [INFO] [stderr] | [INFO] [stderr] 7502 | let messages = borrowed.get_messages(); [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_messages` [INFO] [stderr] [INFO] [stderr] warning: 25 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.09s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/compiler-3d32ab9ea7b6c053 [INFO] [stdout] [INFO] [stdout] running 269 tests [INFO] [stdout] test byte_generator::test::should_generate_byte_code_for_return_without_value ... ok [INFO] [stdout] test byte_generator::test::should_generate_byte_code_for_boolean_true_constant ... ok [INFO] [stdout] test cfg::basic_block::tests::return_followed_by_label_generate_correct_bb ... ok [INFO] [stdout] test cfg::basic_block::tests::jumps_end_the_block ... ok [INFO] [stdout] test cfg::tests::creating_new_block_after_a_block_inserts_new_zero_sized_block ... ok [INFO] [stdout] test cfg::tests::creating_new_block_as_the_first_block_inserts_new_zero_sized_block ... ok [INFO] [stdout] test cfg::basic_block::tests::return_statement_end_the_block ... ok [INFO] [stdout] test byte_generator::test::should_generate_byte_code_for_boolean_false_constant ... ok [INFO] [stdout] test cfg::basic_block::tests::return_followed_by_jump_generate_correct_bb ... ok [INFO] [stdout] test cfg::basic_block::tests::labels_start_a_new_block ... ok [INFO] [stdout] test cfg::basic_block::tests::no_branching_constructs_single_bb ... ok [INFO] [stdout] test cfg::tests::removing_statements_from_block_with_size_of_one_updates_cfg_and_function_correctly ... ok [INFO] [stdout] test cfg::tests::removing_statements_from_multiple_basic_blocks_boundaries_updates_cfg_and_function_correctly ... ok [INFO] [stdout] test cfg::tests::removing_statements_from_multiple_basic_blocks_updates_cfg_and_function_correctly ... ok [INFO] [stdout] test cfg::basic_block::tests::jumps_followed_by_labels_generate_correct_bb ... ok [INFO] [stdout] test cfg::tests::creating_new_block_as_the_last_block_inserts_new_zero_sized_block ... ok [INFO] [stdout] test byte_generator::test::should_generate_byte_code_for_conditional_jump_using_boolean_variable ... ok [INFO] [stdout] test byte_generator::test::should_generate_byte_code_for_return_with_integer_value ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_constant_constant_multiplication ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_constant_integer_return ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_constant_reg_multiplication ... ok [INFO] [stdout] test cfg::basic_block::tests::label_followed_by_return_generate_correct_bb ... ok [INFO] [stdout] test cfg::basic_block::tests::labels_followed_by_jumps_generate_correct_bb ... ok [INFO] [stdout] test cfg::tests::conditional_jump_sets_branch_not_taken_block_if_jump_is_in_last_block ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_reg_to_reg_move ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_reg_constant_multiplication ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_constant_to_reg_move ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_constant_reg_division ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_constant_reg_comparison ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_reg_boolean_constant_move ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_constant_constant_comparison ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_reg_constant_comparison ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_constant_constant_division ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_reg_reg_comparison ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_reg_constant_division ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_reg_reg_division ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_two_constant_addition ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_sub_reg_from_constant ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_two_address_form_add_constant_to_reg ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_two_address_form_add_reg_to_reg ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_two_address_form_register_register_multiplication ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_two_address_form_sub_reg_to_reg ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_sub_constant_from_reg ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_break_three_address_reg_addition_to_two_address_form ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_work_with_void_return ... ok [INFO] [stdout] test lexer::tests::empty_stream_returns_eofs ... ok [INFO] [stdout] test lexer::tests::identifiers_are_accepted ... ok [INFO] [stdout] test lexer::tests::invalid_number_type_letter_is_reported ... ok [INFO] [stdout] test lexer::tests::keywords_are_accepted ... ok [INFO] [stdout] test lexer::tests::lexer_returns_error_token_number_when_number_has_invalid_type_letter ... ok [INFO] [stdout] test lexer::tests::multiple_decimal_separators_are_reported ... ok [INFO] [stdout] test lexer::tests::multiple_decimal_separators_generate_error_tokens ... ok [INFO] [stdout] test lexer::tests::operators_are_accepted ... ok [INFO] [stdout] test lexer::tests::parenthesis_and_other_symbols_are_accepted ... ok [INFO] [stdout] test lexer::tests::strings_are_accepted ... ok [INFO] [stdout] test lexer::tests::unexpected_escape_characters_are_reported ... ok [INFO] [stdout] test lexer::tests::unexpected_escape_characters_produce_correct_tokens ... ok [INFO] [stdout] test lexer::tests::unexpected_starting_symbol_are_ignored_when_getting_tokens ... ok [INFO] [stdout] test lexer::tests::unexpected_starting_symbol_are_reported ... ok [INFO] [stdout] test lexer::tests::unterminated_string_is_reported ... ok [INFO] [stdout] test lexer::tests::unterminated_string_produces_correct_error_tokens ... ok [INFO] [stdout] test lexer::tests::valid_floats_are_accepted ... ok [INFO] [stdout] test lexer::tests::valid_integers_are_accepted ... ok [INFO] [stdout] test lexer::tests::whitespace_does_not_affect_parenthesis ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_break_three_address_from_reg_subtraction_to_two_address_form ... ok [INFO] [stdout] test cfg::tests::inserting_statement_into_empty_block_updates_bb_info_correctly_and_inserts_the_statement ... ok [INFO] [stdout] test optimizer::conditional_jump_conversion::tests::false_edge_is_removed_and_jump_converted_to_unconditional_if_jump_operand_is_true ... ok [INFO] [stdout] test cfg::tests::inserting_statement_into_end_of_nonzero_block_updates_bb_info_correctly_and_inserts_the_statement ... ok [INFO] [stdout] test optimizer::conditional_jump_conversion::tests::phi_functions_are_not_modified_if_no_edges_are_removed ... ok [INFO] [stdout] test optimizer::conditional_jump_conversion::tests::true_edge_is_removed_and_jump_removed_if_jump_operand_is_true ... ok [INFO] [stdout] test optimizer::conditional_jump_conversion::tests::variable_is_removed_from_phi_function_if_the_edge_is_removed_and_condition_is_false ... ok [INFO] [stdout] test optimizer::dead_store::tests::dead_store_is_removed ... ok [INFO] [stdout] test optimizer::dead_store::tests::store_is_not_removed_when_used_in_function_call ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_handles_case_where_successor_block_has_no_label_when_inserting_jumps ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_of_block_with_conditional_jump_to_block_that_follows_the_original_child_block_is_correct ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_of_block_with_conditional_jump_where_false_branch_requires_jump_but_target_block_has_no_label_works ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_of_two_successive_blocks_where_child_has_conditional_jump_and_false_branch_will_follow_the_merged_block_is_correct ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_where_child_block_is_empty_works ... ok [INFO] [stdout] test optimizer::merge_block::tests::merge_where_parent_block_is_empty_works ... ok [INFO] [stdout] test optimizer::merge_block::tests::merging_two_successive_blocks_where_child_is_connected_to_end_and_has_only_label_works ... ok [INFO] [stdout] test optimizer::merge_block::tests::merging_two_successive_blocks_where_child_is_connected_to_end_works ... ok [INFO] [stdout] test optimizer::merge_block::tests::when_merging_two_blocks_where_child_has_fall_through_to_next_block_jump_is_inserted_and_adjacency_updated_after_merge ... ok [INFO] [stdout] test optimizer::dead_store::tests::dead_return_value_is_removed_without_removing_the_call ... ok [INFO] [stdout] test optimizer::merge_block::tests::when_merging_two_blocks_where_child_has_only_a_label_and_has_fall_through_to_next_block_jump_is_inserted_and_adjacency_updated_after_merge ... ok [INFO] [stdout] test parser::tests::array_access_from_function_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::array_access_with_error_in_index_expression_is_rejected ... ok [INFO] [stdout] test parser::tests::array_access_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::array_assignment_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::array_assignment_with_error_in_assignment_expression_is_reported ... ok [INFO] [stdout] test cfg::tests::inserting_statement_into_nonzero_block_updates_bb_info_correctly_and_inserts_the_statement ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_break_three_address_constant_addition_to_two_address_form ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_break_three_address_constant_subtraction_to_two_address_form ... ok [INFO] [stdout] test optimizer::dead_store::tests::return_value_is_not_removed_when_it_is_used ... ok [INFO] [stdout] test optimizer::conditional_jump_conversion::tests::variable_is_removed_from_phi_function_if_the_edge_is_removed_and_condition_is_true ... ok [INFO] [stdout] test lexer::tests::valid_doubles_are_accepted ... ok [INFO] [stdout] test parser::tests::assignment_with_int_min_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::array_declaration_with_non_integer_number_dimension_is_reported ... ok [INFO] [stdout] test parser::tests::array_assignment_with_error_in_index_expression_is_reported ... ok [INFO] [stdout] test parser::tests::array_declaration_with_non_numeric_dimension_is_reported ... ok [INFO] [stdout] test parser::tests::can_use_boolean_not_multiple_times_on_same_value ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_reg_return ... ok [INFO] [stdout] test parser::tests::boolean_and_boolean_or_have_correct_precedence_with_other_operators ... ok [INFO] [stdout] test parser::tests::extern_function_definition_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::chained_member_accesses_are_parsed_correctly ... ok [INFO] [stdout] test parser::tests::function_call_with_arguments_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_call_without_arguments_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::empty_function_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_call_in_expression_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_with_single_variable_declaration_with_addition_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_with_single_variable_declaration_with_complex_initialization_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_with_single_variable_declaration_with_subtraction_and_addition_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_with_return_without_expression_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_definition_with_parameters_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::function_with_return_with_expression_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::if_statement_with_else_if_and_else_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::if_statement_with_else_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::member_access_followed_by_non_identifier_is_reported ... ok [INFO] [stdout] test parser::tests::int_max_plus_one_generates_correct_ast ... ok [INFO] [stdout] test parser::tests::integer_larger_than_i32_max_plus_one_generates_correct_ast ... ok [INFO] [stdout] test parser::tests::missing_lparen_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::missing_lbrace_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::missing_name_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::if_statement_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::member_access_from_function_call_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::boolean_not_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::missing_rparen_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::boolean_not_has_correct_precedence ... ok [INFO] [stdout] test cfg::tests::removing_statement_from_the_beginning_of_function_updates_cfg_and_function_correctly ... ok [INFO] [stdout] test cfg::tests::inserting_statement_into_start_of_nonzero_block_updates_bb_info_correctly_and_inserts_the_statement ... ok [INFO] [stdout] test parser::tests::assignment_with_negative_number_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::boolean_and_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::single_variable_declaration_with_boolean_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::equals_has_lower_precedence_than_greater_less_operators ... ok [INFO] [stdout] test parser::tests::missing_colon_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::missing_operand_in_arithmetic_operation_is_reported ... ok [INFO] [stdout] test parser::tests::missing_operator_in_arithmetic_operation_is_reported ... ok [INFO] [stdout] test parser::tests::missing_rbrace_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::variable_declaration_after_bad_declaration_is_handled_correctly ... ok [INFO] [stdout] test parser::tests::variable_declaration_without_initialization_is_error ... ok [INFO] [stdout] test parser::tests::boolean_or_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::variable_declaration_after_variable_with_missing_declaration_is_handled_correctly ... ok [INFO] [stdout] test parser::tests::valid_member_access_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::one_dimensional_integer_array_declaration_is_parsed_correctly ... ok [INFO] [stdout] test parser::tests::single_variable_declaration_with_string_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::variable_in_expression_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::while_loop_with_complex_expression_produces_correct_ast ... ok [INFO] [stdout] test semcheck::tests::array_access_in_expression_with_incompatible_type_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_access_on_undeclared_identifier_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_access_with_regular_variable_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_access_with_method_identifier_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_assignment_using_regular_variable_as_array_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_assignment_with_undeclared_array_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_assignment_using_function_as_array_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_declaration_with_invalid_initialization_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_declaration_with_negative_dimension_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_declaration_with_zero_dimension_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_length_property_on_non_array_variable_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_length_property_on_function_is_rejected ... ok [INFO] [stdout] test semcheck::tests::array_access_with_non_integer_index_expression_is_rejected ... ok [INFO] [stdout] test semcheck::tests::artihmetic_operation_with_doubles_is_allowed ... ok [INFO] [stdout] test semcheck::tests::artihmetic_operation_with_integers_is_allowed ... ok [INFO] [stdout] test semcheck::tests::assigning_boolean_is_allowed ... ok [INFO] [stdout] test semcheck::tests::binary_and_with_boolean_values_is_accepted ... ok [INFO] [stdout] test semcheck::tests::binary_and_with_non_boolean_values_is_rejected ... ok [INFO] [stdout] test semcheck::tests::binary_not_with_boolean_value_is_accepted ... ok [INFO] [stdout] test semcheck::tests::assigning_into_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::binary_or_with_boolean_values_is_accepted ... ok [INFO] [stdout] test semcheck::tests::binary_not_with_non_boolean_value_is_rejected ... ok [INFO] [stdout] test semcheck::tests::binary_or_with_non_boolean_values_is_rejected ... ok [INFO] [stdout] test semcheck::tests::calling_nonexistent_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::concatenation_is_allowed ... ok [INFO] [stdout] test semcheck::tests::correct_while_loop_is_accepted ... ok [INFO] [stdout] test semcheck::tests::calling_extern_function_is_accepted ... ok [INFO] [stdout] test semcheck::tests::declaration_of_variable_which_shares_name_with_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::error_in_else_block_is_reported ... ok [INFO] [stdout] test semcheck::tests::artihmetic_operation_with_floats_is_allowed ... ok [INFO] [stdout] test semcheck::tests::error_in_if_statement_true_block_is_reported ... ok [INFO] [stdout] test semcheck::tests::error_in_while_loop_body_is_handled ... ok [INFO] [stdout] test semcheck::tests::declaring_void_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::expression_using_variables_is_allowed ... ok [INFO] [stdout] test semcheck::tests::error_in_function_argument_is_reported ... ok [INFO] [stdout] test parser::tests::single_variable_declaration_with_double_produces_correct_ast ... ok [INFO] [stdout] test semcheck::tests::extern_function_parameter_name_collision_is_reported ... ok [INFO] [stdout] test parser::tests::single_variable_declaration_with_float_produces_correct_ast ... ok [INFO] [stdout] test semcheck::tests::function_parameter_name_collision_is_reported ... ok [INFO] [stdout] test parser::tests::single_variable_declaration_with_integer_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::while_loop_produces_correct_ast ... ok [INFO] [stdout] test semcheck::tests::arithmetic_operation_on_booleans_is_reported ... ok [INFO] [stdout] test semcheck::tests::if_statement_without_else_is_accepted ... ok [INFO] [stdout] test parser::tests::missing_variable_type_is_reported_in_function_definition ... ok [INFO] [stdout] test parser::tests::returning_negative_number_produces_correct_ast ... ok [INFO] [stdout] test parser::tests::not_equals_has_lower_precedence_than_greater_less_operators ... ok [INFO] [stdout] test semcheck::tests::integer_larger_than_i32_max_plus_one_generates_correct_ast ... ok [INFO] [stdout] test semcheck::tests::extern_function_parameter_shadowing_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::function_parameter_shadowing_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::extern_function_redefinition_is_reported ... ok [INFO] [stdout] test semcheck::tests::function_parameters_are_added_to_the_symbol_table_level_of_function_block ... ok [INFO] [stdout] test semcheck::tests::if_statement_with_else_is_accepted ... ok [INFO] [stdout] test semcheck::tests::negation_of_boolean_is_reported ... ok [INFO] [stdout] test semcheck::tests::int_max_plus_one_is_reported ... ok [INFO] [stdout] test semcheck::tests::missing_expression_in_return_is_reported_if_function_has_non_void_return_type ... ok [INFO] [stdout] test semcheck::tests::negation_of_string_is_reported ... ok [INFO] [stdout] test semcheck::tests::non_indexed_array_assignment_is_rejected ... ok [INFO] [stdout] test semcheck::tests::negation_of_string_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::non_integer_array_index_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::redeclaration_of_variable_is_allowed_if_scopes_do_not_overlap ... ok [INFO] [stdout] test semcheck::tests::redefinition_of_a_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::if_statement_with_non_boolean_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::redeclaration_of_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::invalid_property_on_array_is_rejected ... ok [INFO] [stdout] test semcheck::tests::negation_of_boolean_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::non_concatenation_arithmetic_operation_on_text_is_reported ... ok [INFO] [stdout] test semcheck::tests::return_with_correct_constant_type_is_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_with_incorrect_function_type_is_not_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::redefinition_of_function_parameter_in_function_body_is_reported ... ok [INFO] [stdout] test semcheck::tests::return_with_incorrect_variable_type_is_not_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_without_expression_in_void_function_is_allowed ... ok [INFO] [stdout] test semcheck::tests::return_with_incorrect_extern_function_type_is_not_allowed_in_void_function ... ok [INFO] [stdout] test semcheck::tests::return_with_incorrect_constant_type_is_not_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_with_void_extern_function_is_not_allowed_in_void_function ... ok [INFO] [stdout] test semcheck::tests::type_error_in_array_assignment_index_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::return_with_correct_extern_function_type_is_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_with_incorrect_extern_function_type_is_not_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_with_correct_variable_type_is_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::return_with_function_calling_void_function_is_not_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::type_error_in_multiplication_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_in_plus_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::return_with_correct_function_type_is_allowed_in_function ... ok [INFO] [stdout] test semcheck::tests::type_error_when_using_array_length_property_in_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_involving_variables_in_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_mismatch_with_function_parameter_usage_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_in_minus_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::negation_of_number_is_allowed ... ok [INFO] [stdout] test semcheck::tests::returning_void_function_from_void_function_is_not_allowed ... ok [INFO] [stdout] test semcheck::tests::type_error_in_array_assignment_assignment_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::using_array_length_property_is_accepted ... ok [INFO] [stdout] test semcheck::tests::syntax_error_node_is_handled_correctly ... ok [INFO] [stdout] test semcheck::tests::undeclared_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_in_array_assignment_is_reported_if_array_type_and_assignment_type_are_not_correct ... ok [INFO] [stdout] test semcheck::tests::type_error_when_variable_is_declared_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_when_assigning_into_variable_is_reported ... ok [INFO] [stdout] test semcheck::tests::if_statement_with_non_boolean_expression_in_else_if_is_reported ... ok [INFO] [stdout] test semcheck::tests::returning_value_from_void_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::type_error_in_division_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::using_void_funtion_in_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::while_loop_with_non_boolean_expression_is_reported ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_regs_for_two_constant_subtraction ... ok [INFO] [stdout] test code_generator::stack_allocator::tests::should_allocate_two_address_form_add_constant_to_reg_with_constant_as_first_argument ... ok [INFO] [stdout] test semcheck::tests::void_function_parameter_is_reported ... ok [INFO] [stdout] test semcheck::tests::using_function_as_variable_in_expression_is_reported ... ok [INFO] [stdout] test semcheck::tests::using_function_parameters_in_function_is_accepted ... ok [INFO] [stdout] test semcheck::tests::using_variable_as_function_is_reported ... ok [INFO] [stdout] test semcheck::tests::valid_array_assignment_is_accepted ... ok [INFO] [stdout] test semcheck::tests::valid_function_call_with_arguments_is_accepted ... ok [INFO] [stdout] test semcheck::tests::valid_array_access_is_accepted ... ok [INFO] [stdout] test semcheck::tests::using_function_in_expression_is_accepted ... ok [INFO] [stdout] test semcheck::tests::valid_array_declaration_is_accepted ... ok [INFO] [stdout] test semcheck::tests::using_non_void_function_with_wrong_type_in_expression_is_reported ... ok [INFO] [stdout] test tac_generator::tests::function_call_to_void_function_does_not_emit_destination ... ok [INFO] [stdout] test string_table::inserting_same_string_multiple_times_returns_same_pointer ... ok [INFO] [stdout] test string_table::inserting_multiple_into_empty_table_returns_successive_indexes ... ok [INFO] [stdout] test tac_generator::tests::function_call_generates_correct_tac ... ok [INFO] [stdout] test parser::tests::simple_less_expression_produces_correct_ast ... ok [INFO] [stdout] test semcheck::tests::wrong_number_of_function_arguments_is_reported ... ok [INFO] [stdout] test tac_generator::tests::function_with_parameters_generates_correct_tac ... ok [INFO] [stdout] test tac_generator::tests::program_with_variable_declarations_produces_correct_tac ... ok [INFO] [stdout] test semcheck::tests::wrong_type_in_function_argument_is_reported ... ok [INFO] [stdout] test semcheck::tests::wrong_number_of_extern_function_arguments_is_reported ... ok [INFO] [stdout] test cfg::tests::creating_new_block_out_of_bounds_panics ... ok [INFO] [stderr] Running /opt/rustwide/target/debug/deps/compiler-3ce3c82352481e7f [INFO] [stdout] [INFO] [stdout] test result: ok. 269 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests compiler [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "f98a4ad386bc636005551f70802990d766f7d567cb36261357adaf785e99b25c"` [INFO] running `"docker" "rm" "-f" "f98a4ad386bc636005551f70802990d766f7d567cb36261357adaf785e99b25c"` [INFO] [stdout] f98a4ad386bc636005551f70802990d766f7d567cb36261357adaf785e99b25c