[INFO] cloning repository https://github.com/ArturKovacs/jsrs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ArturKovacs/jsrs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArturKovacs%2Fjsrs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArturKovacs%2Fjsrs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] dc2b0e4c2a07af2cf1553afd62ee1ea2cd2020c3
[INFO] checking ArturKovacs/jsrs against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArturKovacs%2Fjsrs" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ArturKovacs/jsrs
[INFO] finished tweaking git repo https://github.com/ArturKovacs/jsrs
[INFO] tweaked toml for git repo https://github.com/ArturKovacs/jsrs written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ArturKovacs/jsrs on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ArturKovacs/jsrs 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2ed1246c735e1f5e0d9d7f59d162b50daf94ff671c7e7c82e265b98ef61d168f
[INFO] running `Command { std: "docker" "start" "-a" "2ed1246c735e1f5e0d9d7f59d162b50daf94ff671c7e7c82e265b98ef61d168f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2ed1246c735e1f5e0d9d7f59d162b50daf94ff671c7e7c82e265b98ef61d168f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ed1246c735e1f5e0d9d7f59d162b50daf94ff671c7e7c82e265b98ef61d168f", kill_on_drop: false }`
[INFO] [stdout] 2ed1246c735e1f5e0d9d7f59d162b50daf94ff671c7e7c82e265b98ef61d168f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5449406599d1601374f64f346983ea502386a4a177666b4c5192175b9f9121fd
[INFO] running `Command { std: "docker" "start" "-a" "5449406599d1601374f64f346983ea502386a4a177666b4c5192175b9f9121fd", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling thiserror v1.0.66
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling owo-colors v4.1.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]     Checking smawk v0.3.2
[INFO] [stderr]     Checking unicode-linebreak v0.1.5
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]    Compiling libc v0.2.161
[INFO] [stderr]     Checking allocator-api2 v0.2.18
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking rustc-hash v2.0.0
[INFO] [stderr]     Checking oxc_estree v0.34.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking unicode-id-start v1.3.1
[INFO] [stderr]     Checking assert-unchecked v0.1.2
[INFO] [stderr]     Checking oxc_index v0.34.0
[INFO] [stderr]     Checking ryu-js v1.0.1
[INFO] [stderr]     Checking nonmax v0.5.5
[INFO] [stderr]     Checking hashbrown v0.15.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]     Checking phf_shared v0.11.2
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking textwrap v0.16.1
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking cow-utils v0.1.3
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking bumpalo v3.16.0
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]     Checking castaway v0.2.3
[INFO] [stderr]     Checking compact_str v0.8.0
[INFO] [stderr]     Checking oxc_allocator v0.34.0
[INFO] [stderr]     Checking indexmap v2.6.0
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]    Compiling syn v2.0.87
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.66
[INFO] [stderr]    Compiling miette-derive v7.2.0
[INFO] [stderr]    Compiling oxc_ast_macros v0.34.0
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]     Checking phf v0.11.2
[INFO] [stderr]     Checking miette v7.2.0
[INFO] [stderr]     Checking oxc_span v0.34.0
[INFO] [stderr]     Checking oxc_diagnostics v0.34.0
[INFO] [stderr]     Checking oxc_syntax v0.34.0
[INFO] [stderr]     Checking oxc_regular_expression v0.34.0
[INFO] [stderr]     Checking oxc_cfg v0.34.0
[INFO] [stderr]     Checking oxc_ast v0.34.0
[INFO] [stderr]     Checking oxc_ecmascript v0.34.0
[INFO] [stderr]     Checking oxc_parser v0.34.0
[INFO] [stderr]     Checking oxc_semantic v0.34.0
[INFO] [stderr]     Checking oxc v0.34.0
[INFO] [stderr]     Checking jsrs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Argument`, `AstNode`, `Program`, and `syntax::node`
[INFO] [stdout]   --> src/rust/mod.rs:6:13
[INFO] [stdout]    |
[INFO] [stdout] 6  |             Argument, AssignmentExpression, AssignmentOperator, AssignmentTarget, BinaryOperator,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 7  |             BindingPattern, ComputedMemberExpression, Expression, ForStatementInit,
[INFO] [stdout] 8  |             ObjectPropertyKind, Program, PropertyKey, SimpleAssignmentTarget, Statement,
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     semantic::{AstNode, AstNodes},
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 15 |     syntax::node,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Argument`, `AstNode`, `Program`, and `syntax::node`
[INFO] [stdout]   --> src/rust/mod.rs:6:13
[INFO] [stdout]    |
[INFO] [stdout] 6  |             Argument, AssignmentExpression, AssignmentOperator, AssignmentTarget, BinaryOperator,
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] 7  |             BindingPattern, ComputedMemberExpression, Expression, ForStatementInit,
[INFO] [stdout] 8  |             ObjectPropertyKind, Program, PropertyKey, SimpleAssignmentTarget, Statement,
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     semantic::{AstNode, AstNodes},
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 15 |     syntax::node,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]   --> src/rust/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let variables = nodes
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_nodes` is never used
[INFO] [stdout]   --> src/main.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn print_nodes(ast_nodes: &AstNodes) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_variable_modificiations` is never used
[INFO] [stdout]   --> src/rust/mod.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn count_variable_modificiations(nodes: &AstNodes) -> HashMap<String, usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assignment_operator_to_rust_text` is never used
[INFO] [stdout]    --> src/rust/mod.rs:446:4
[INFO] [stdout]     |
[INFO] [stdout] 446 | fn assignment_operator_to_rust_text(operator: AssignmentOperator) -> &'static str {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConsoleStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | struct ConsoleStruct {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct ProcessStruct {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MathStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct MathStruct {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `console` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn console() -> ConsoleStruct {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn process() -> ProcessStruct {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `math` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:123:4
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn math() -> MathStruct {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsString` is never constructed
[INFO] [stdout]    --> src/rust/output_prelude.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct JsString {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl JsString {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] 159 |     pub fn as_str(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ObjectSubtype` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:164:6
[INFO] [stdout]     |
[INFO] [stdout] 164 | enum ObjectSubtype {
[INFO] [stdout]     |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsObjectContents` is never constructed
[INFO] [stdout]    --> src/rust/output_prelude.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct JsObjectContents {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JsObject` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:185:10
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub type JsObject = Rc<JsCell<JsObjectContents>>;
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsValue` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:188:10
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub enum JsValue {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:210:8
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl JsValue {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 210 |     fn from_entries<const N: usize>(entries: [(JsString, JsValue); N]) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn new_array(elements: Vec<JsValue>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     fn new_function(func: Box<dyn Fn(&[JsValue]) -> JsValue>) -> JsValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub fn add(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub fn sub(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn mult(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn divide(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     fn do_binary_operation_nums(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn less(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn get_prop(&self, name: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn set_prop(&self, name: JsValue, value: JsValue) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn to_js_string(&self) -> JsString {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 362 |     pub fn falsy(&self) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn truthy(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn to_number(&self) -> JsValue {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn call(&self, args: &[JsValue]) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `negate` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:417:4
[INFO] [stdout]     |
[INFO] [stdout] 417 | fn negate(value: JsValue) -> JsValue {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:426:4
[INFO] [stdout]     |
[INFO] [stdout] 426 | fn plus(value: JsValue) -> JsValue {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsCell` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub struct JsCell<T> {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `borrow`, and `borrow_mut` are never used
[INFO] [stdout]   --> src/rust/output_prelude.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 20 |     impl<T> JsCell<T> {
[INFO] [stdout]    |     ----------------- associated items in this implementation
[INFO] [stdout] 21 |         pub fn new(value: T) -> Self {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |         pub fn borrow(&self) -> &T {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |         pub fn borrow_mut<'a>(&'a self) -> RefMut<'a, T> {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefMut` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:42:16
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub struct RefMut<'a, T: ?Sized> {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PI` should have a snake case name
[INFO] [stdout]   --> src/rust/output_prelude.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub PI: JsValue,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `pi`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `variables`
[INFO] [stdout]   --> src/rust/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let variables = nodes
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_variables`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_nodes` is never used
[INFO] [stdout]   --> src/main.rs:79:4
[INFO] [stdout]    |
[INFO] [stdout] 79 | fn print_nodes(ast_nodes: &AstNodes) {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_variable_modificiations` is never used
[INFO] [stdout]   --> src/rust/mod.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub fn count_variable_modificiations(nodes: &AstNodes) -> HashMap<String, usize> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assignment_operator_to_rust_text` is never used
[INFO] [stdout]    --> src/rust/mod.rs:446:4
[INFO] [stdout]     |
[INFO] [stdout] 446 | fn assignment_operator_to_rust_text(operator: AssignmentOperator) -> &'static str {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConsoleStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | struct ConsoleStruct {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProcessStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | struct ProcessStruct {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MathStruct` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct MathStruct {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `console` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn console() -> ConsoleStruct {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn process() -> ProcessStruct {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `math` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:123:4
[INFO] [stdout]     |
[INFO] [stdout] 123 | fn math() -> MathStruct {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsString` is never constructed
[INFO] [stdout]    --> src/rust/output_prelude.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct JsString {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_str` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl JsString {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] 159 |     pub fn as_str(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ObjectSubtype` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:164:6
[INFO] [stdout]     |
[INFO] [stdout] 164 | enum ObjectSubtype {
[INFO] [stdout]     |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsObjectContents` is never constructed
[INFO] [stdout]    --> src/rust/output_prelude.rs:170:12
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub struct JsObjectContents {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `JsObject` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:185:10
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub type JsObject = Rc<JsCell<JsObjectContents>>;
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `JsValue` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:188:10
[INFO] [stdout]     |
[INFO] [stdout] 188 | pub enum JsValue {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:210:8
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl JsValue {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 210 |     fn from_entries<const N: usize>(entries: [(JsString, JsValue); N]) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn new_array(elements: Vec<JsValue>) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     fn new_function(func: Box<dyn Fn(&[JsValue]) -> JsValue>) -> JsValue {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub fn add(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub fn sub(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn mult(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn divide(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     fn do_binary_operation_nums(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn less(&self, other: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn get_prop(&self, name: JsValue) -> JsValue {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn set_prop(&self, name: JsValue, value: JsValue) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn to_js_string(&self) -> JsString {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 362 |     pub fn falsy(&self) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn truthy(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn to_number(&self) -> JsValue {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn call(&self, args: &[JsValue]) -> JsValue {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `negate` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:417:4
[INFO] [stdout]     |
[INFO] [stdout] 417 | fn negate(value: JsValue) -> JsValue {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus` is never used
[INFO] [stdout]    --> src/rust/output_prelude.rs:426:4
[INFO] [stdout]     |
[INFO] [stdout] 426 | fn plus(value: JsValue) -> JsValue {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `JsCell` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub struct JsCell<T> {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `borrow`, and `borrow_mut` are never used
[INFO] [stdout]   --> src/rust/output_prelude.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 20 |     impl<T> JsCell<T> {
[INFO] [stdout]    |     ----------------- associated items in this implementation
[INFO] [stdout] 21 |         pub fn new(value: T) -> Self {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |         pub fn borrow(&self) -> &T {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |         pub fn borrow_mut<'a>(&'a self) -> RefMut<'a, T> {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefMut` is never constructed
[INFO] [stdout]   --> src/rust/output_prelude.rs:42:16
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub struct RefMut<'a, T: ?Sized> {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PI` should have a snake case name
[INFO] [stdout]   --> src/rust/output_prelude.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub PI: JsValue,
[INFO] [stdout]    |         ^^ help: convert the identifier to snake case: `pi`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.08s
[INFO] running `Command { std: "docker" "inspect" "5449406599d1601374f64f346983ea502386a4a177666b4c5192175b9f9121fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5449406599d1601374f64f346983ea502386a4a177666b4c5192175b9f9121fd", kill_on_drop: false }`
[INFO] [stdout] 5449406599d1601374f64f346983ea502386a4a177666b4c5192175b9f9121fd
