[INFO] fetching crate morpher 0.1.0... [INFO] testing morpher-0.1.0 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2 [INFO] extracting crate morpher 0.1.0 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate morpher 0.1.0 [INFO] finished tweaking crates.io crate morpher 0.1.0 [INFO] tweaked toml for crates.io crate morpher 0.1.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate morpher 0.1.0 on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate morpher 0.1.0 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded compact_str v0.7.1 [INFO] [stderr] Downloaded oxc_syntax v0.13.5 [INFO] [stderr] Downloaded oxc_span v0.13.5 [INFO] [stderr] Downloaded smawk v0.3.3 [INFO] [stderr] Downloaded oxc_ast_macros v0.147.0 [INFO] [stderr] Downloaded parcel_sourcemap v2.1.1 [INFO] [stderr] Downloaded unicode-id-start v1.4.0 [INFO] [stderr] Downloaded cow-utils v0.1.3 [INFO] [stderr] Downloaded cssparser-macros v0.7.0 [INFO] [stderr] Downloaded simd-abstraction v0.7.1 [INFO] [stderr] Downloaded dashmap v5.5.3 [INFO] [stderr] Downloaded lightningcss-derive v1.0.0-alpha.43 [INFO] [stderr] Downloaded outref v0.1.0 [INFO] [stderr] Downloaded nonmax v0.5.5 [INFO] [stderr] Downloaded vlq v0.5.1 [INFO] [stderr] Downloaded oxc_str v0.147.0 [INFO] [stderr] Downloaded oxc_estree v0.147.0 [INFO] [stderr] Downloaded oxc_span v0.147.0 [INFO] [stderr] Downloaded dragonbox_ecma v0.1.12 [INFO] [stderr] Downloaded data-url v0.1.1 [INFO] [stderr] Downloaded serde-content v0.1.2 [INFO] [stderr] Downloaded base64-simd v0.7.0 [INFO] [stderr] Downloaded cssparser-color v0.5.0 [INFO] [stderr] Downloaded oxc_index v0.13.5 [INFO] [stderr] Downloaded morph-parser v0.1.0 [INFO] [stderr] Downloaded phf_macros v0.14.0 [INFO] [stderr] Downloaded const-str v1.1.0 [INFO] [stderr] Downloaded oxc_syntax v0.147.0 [INFO] [stderr] Downloaded oxc_index v5.0.0 [INFO] [stderr] Downloaded oxc_diagnostics v0.147.0 [INFO] [stderr] Downloaded oxc_regular_expression v0.147.0 [INFO] [stderr] Downloaded oxc_ecmascript v0.147.0 [INFO] [stderr] Downloaded cssparser v0.37.0 [INFO] [stderr] Downloaded oxc_data_structures v0.147.0 [INFO] [stderr] Downloaded oxc_ast_visit v0.147.0 [INFO] [stderr] Downloaded uuid v1.25.0 [INFO] [stderr] Downloaded parcel_selectors v0.28.3 [INFO] [stderr] Downloaded compact_str v0.10.0 [INFO] [stderr] Downloaded oxc_allocator v0.147.0 [INFO] [stderr] Downloaded oxc_parser v0.147.0 [INFO] [stderr] Downloaded oxc_ast v0.147.0 [INFO] [stderr] Downloaded lightningcss v1.0.0-alpha.72 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c [INFO] running `Command { std: "docker" "start" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling siphasher v1.0.3 [INFO] [stderr] Compiling syn v3.0.4 [INFO] [stderr] Compiling syn v2.0.119 [INFO] [stderr] Compiling fastrand v2.5.0 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling rustc-hash v2.1.3 [INFO] [stderr] Compiling owo-colors v4.3.0 [INFO] [stderr] Compiling oxc_data_structures v0.147.0 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling smawk v0.3.3 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling unicode-width v0.2.2 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling oxc_estree v0.147.0 [INFO] [stderr] Compiling unicode-id-start v1.4.0 [INFO] [stderr] Compiling cow-utils v0.1.3 [INFO] [stderr] Compiling compact_str v0.10.0 [INFO] [stderr] Compiling dragonbox_ecma v0.1.12 [INFO] [stderr] Compiling crossbeam-utils v0.8.22 [INFO] [stderr] Compiling ahash v0.7.8 [INFO] [stderr] Compiling rand v0.8.8 [INFO] [stderr] Compiling phf_shared v0.14.0 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Compiling nonmax v0.5.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.20 [INFO] [stderr] Compiling unicode-segmentation v1.13.3 [INFO] [stderr] Compiling textwrap v0.16.2 [INFO] [stderr] Compiling phf v0.14.0 [INFO] [stderr] Compiling phf_generator v0.14.0 [INFO] [stderr] Compiling hashbrown v0.17.1 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling dtoa v1.0.11 [INFO] [stderr] Compiling crossbeam-deque v0.8.7 [INFO] [stderr] Compiling outref v0.1.0 [INFO] [stderr] Compiling dtoa-short v0.3.5 [INFO] [stderr] Compiling zerocopy v0.8.56 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling rkyv v0.7.46 [INFO] [stderr] Compiling simd-abstraction v0.7.1 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling seahash v4.1.0 [INFO] [stderr] Compiling phf_generator v0.11.3 [INFO] [stderr] Compiling matches v0.1.10 [INFO] [stderr] Compiling phf_codegen v0.11.3 [INFO] [stderr] Compiling data-url v0.1.1 [INFO] [stderr] Compiling base64-simd v0.7.0 [INFO] [stderr] Compiling parcel_selectors v0.28.3 [INFO] [stderr] Compiling num-bigint v0.5.1 [INFO] [stderr] Compiling convert_case v0.6.0 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling serde_json v1.0.151 [INFO] [stderr] Compiling vlq v0.5.1 [INFO] [stderr] Compiling oxc_allocator v0.147.0 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling indexmap v2.14.0 [INFO] [stderr] Compiling compact_str v0.7.1 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling pastey v0.1.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling seq-macro v0.3.6 [INFO] [stderr] Compiling pathdiff v0.2.3 [INFO] [stderr] Compiling data-encoding v2.11.1 [INFO] [stderr] Compiling const-str v1.1.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling oxc_index v0.13.5 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling oxc_str v0.147.0 [INFO] [stderr] Compiling serde_derive v1.0.229 [INFO] [stderr] Compiling oxc_ast_macros v0.147.0 [INFO] [stderr] Compiling thiserror-impl v2.0.20 [INFO] [stderr] Compiling oxc_span v0.147.0 [INFO] [stderr] Compiling thiserror v2.0.20 [INFO] [stderr] Compiling phf_macros v0.14.0 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling phf_macros v0.11.3 [INFO] [stderr] Compiling cssparser-macros v0.7.0 [INFO] [stderr] Compiling miette-derive v7.6.0 [INFO] [stderr] Compiling ptr_meta_derive v0.1.4 [INFO] [stderr] Compiling rkyv_derive v0.7.46 [INFO] [stderr] Compiling lightningcss-derive v1.0.0-alpha.43 [INFO] [stderr] Compiling phf v0.11.3 [INFO] [stderr] Compiling ptr_meta v0.1.4 [INFO] [stderr] Compiling phf v0.13.1 [INFO] [stderr] Compiling miette v7.6.0 [INFO] [stderr] Compiling oxc_span v0.13.5 [INFO] [stderr] Compiling serde v1.0.229 [INFO] [stderr] Compiling smallvec v1.15.2 [INFO] [stderr] Compiling oxc_index v5.0.0 [INFO] [stderr] Compiling serde-content v0.1.2 [INFO] [stderr] Compiling oxc_diagnostics v0.147.0 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling cssparser v0.37.0 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling oxc_syntax v0.147.0 [INFO] [stderr] Compiling oxc_syntax v0.13.5 [INFO] [stderr] Compiling cssparser-color v0.5.0 [INFO] [stderr] Compiling oxc_regular_expression v0.147.0 [INFO] [stderr] Compiling parcel_sourcemap v2.1.1 [INFO] [stderr] Compiling oxc_ast v0.147.0 [INFO] [stderr] Compiling lightningcss v1.0.0-alpha.72 [INFO] [stderr] Compiling oxc_ecmascript v0.147.0 [INFO] [stderr] Compiling oxc_ast_visit v0.147.0 [INFO] [stderr] Compiling oxc_parser v0.147.0 [INFO] [stderr] Compiling morph-parser v0.1.0 [INFO] [stderr] Compiling morpher v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `AnalysisResult` [INFO] [stdout] --> src/codegen/cpp.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use super::analyzer::{AnalysisResult, EscapeAnalyzer, EscapeKind, WidenedType}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:131:31 [INFO] [stdout] | [INFO] [stdout] 131 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W unused-qualifications` [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 131 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 131 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:2288:38 [INFO] [stdout] | [INFO] [stdout] 2288 | let param_names: std::collections::HashSet = m [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 2288 - let param_names: std::collections::HashSet = m [INFO] [stdout] 2288 + let param_names: HashSet = m [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:3026:21 [INFO] [stdout] | [INFO] [stdout] 3026 | var_types: &std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 3026 - var_types: &std::collections::HashMap, [INFO] [stdout] 3026 + var_types: &HashMap, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/rust.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 18 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 18 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `SourceType` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `SourceType` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W redundant-imports` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Span` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `Span` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | parser::translate_to_cpp(source, filename, options) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 45 - parser::translate_to_cpp(source, filename, options) [INFO] [stdout] 45 + translate_to_cpp(source, filename, options) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:128:16 [INFO] [stdout] | [INFO] [stdout] 128 | let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 128 - let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] 128 + let code = translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:143:5 [INFO] [stdout] | [INFO] [stdout] 143 | parser::translate_to_rust(source, filename, 0) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 143 - parser::translate_to_rust(source, filename, 0) [INFO] [stdout] 143 + translate_to_rust(source, filename, 0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1138 | BindingPattern::BindingIdentifier(id) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1141 | BindingPattern::ObjectPattern(object) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1156 | BindingPattern::ArrayPattern(array) => { [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1168 | BindingPattern::AssignmentPattern(assign) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1767 | ChainElement::CallExpression(c) => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1773 | ChainElement::StaticMemberExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1776 | ChainElement::PrivateFieldExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1779 | ChainElement::ComputedMemberExpression(m) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/js_comparison.rs:273:23 [INFO] [stdout] | [INFO] [stdout] 265 | OperandClass::Text | OperandClass::JsString => { [INFO] [stdout] | ---------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 273 | | OperandClass::JsString [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `emit_std_vector_literal` is never used [INFO] [stdout] --> src/codegen/cpp.rs:3975:8 [INFO] [stdout] | [INFO] [stdout] 107 | impl<'a> CppTranslator<'a> { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 3975 | fn emit_std_vector_literal(&mut self, init: &Expression<'a>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `release` profile [optimized] target(s) in 2m 28s [INFO] running `Command { std: "docker" "inspect" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `AnalysisResult` [INFO] [stdout] --> src/codegen/cpp.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use super::analyzer::{AnalysisResult, EscapeAnalyzer, EscapeKind, WidenedType}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:131:31 [INFO] [stdout] | [INFO] [stdout] 131 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W unused-qualifications` [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 131 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 131 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:2288:38 [INFO] [stdout] | [INFO] [stdout] 2288 | let param_names: std::collections::HashSet = m [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 2288 - let param_names: std::collections::HashSet = m [INFO] [stdout] 2288 + let param_names: HashSet = m [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:3026:21 [INFO] [stdout] | [INFO] [stdout] 3026 | var_types: &std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 3026 - var_types: &std::collections::HashMap, [INFO] [stdout] 3026 + var_types: &HashMap, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/rust.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 18 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 18 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `SourceType` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `SourceType` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W redundant-imports` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Span` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `Span` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | parser::translate_to_cpp(source, filename, options) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 45 - parser::translate_to_cpp(source, filename, options) [INFO] [stdout] 45 + translate_to_cpp(source, filename, options) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:128:16 [INFO] [stdout] | [INFO] [stdout] 128 | let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 128 - let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] 128 + let code = translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:143:5 [INFO] [stdout] | [INFO] [stdout] 143 | parser::translate_to_rust(source, filename, 0) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 143 - parser::translate_to_rust(source, filename, 0) [INFO] [stdout] 143 + translate_to_rust(source, filename, 0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1138 | BindingPattern::BindingIdentifier(id) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1141 | BindingPattern::ObjectPattern(object) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1156 | BindingPattern::ArrayPattern(array) => { [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1168 | BindingPattern::AssignmentPattern(assign) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1767 | ChainElement::CallExpression(c) => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1773 | ChainElement::StaticMemberExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1776 | ChainElement::PrivateFieldExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1779 | ChainElement::ComputedMemberExpression(m) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/js_comparison.rs:273:23 [INFO] [stdout] | [INFO] [stdout] 265 | OperandClass::Text | OperandClass::JsString => { [INFO] [stdout] | ---------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 273 | | OperandClass::JsString [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `emit_std_vector_literal` is never used [INFO] [stdout] --> src/codegen/cpp.rs:3975:8 [INFO] [stdout] | [INFO] [stdout] 107 | impl<'a> CppTranslator<'a> { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 3975 | fn emit_std_vector_literal(&mut self, init: &Expression<'a>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling morpher v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `SourceType` is imported redundantly [INFO] [stdout] --> src/codegen/analyzer.rs:2537:9 [INFO] [stdout] | [INFO] [stdout] 2534 | use super::*; [INFO] [stdout] | -------- the item `SourceType` is already imported here [INFO] [stdout] ... [INFO] [stdout] 2537 | use oxc_span::SourceType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W redundant-imports` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `SourceType` is imported redundantly [INFO] [stdout] --> src/codegen/analyzer.rs:2683:9 [INFO] [stdout] | [INFO] [stdout] 2680 | use super::*; [INFO] [stdout] | -------- the item `SourceType` is already imported here [INFO] [stdout] ... [INFO] [stdout] 2683 | use oxc_span::SourceType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AnalysisResult` [INFO] [stdout] --> src/codegen/cpp.rs:5:23 [INFO] [stdout] | [INFO] [stdout] 5 | use super::analyzer::{AnalysisResult, EscapeAnalyzer, EscapeKind, WidenedType}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:131:31 [INFO] [stdout] | [INFO] [stdout] 131 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W unused-qualifications` [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 131 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 131 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:2288:38 [INFO] [stdout] | [INFO] [stdout] 2288 | let param_names: std::collections::HashSet = m [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 2288 - let param_names: std::collections::HashSet = m [INFO] [stdout] 2288 + let param_names: HashSet = m [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/cpp.rs:3026:21 [INFO] [stdout] | [INFO] [stdout] 3026 | var_types: &std::collections::HashMap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 3026 - var_types: &std::collections::HashMap, [INFO] [stdout] 3026 + var_types: &HashMap, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/codegen/rust.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 18 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stdout] 18 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `SourceType` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:25 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `SourceType` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Span` is imported redundantly [INFO] [stdout] --> src/linter.rs:4:37 [INFO] [stdout] | [INFO] [stdout] 2 | use oxc_ast::ast::*; [INFO] [stdout] | --------------- the item `Span` is already imported here [INFO] [stdout] 3 | use oxc_parser::Parser; [INFO] [stdout] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | parser::translate_to_cpp(source, filename, options) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 45 - parser::translate_to_cpp(source, filename, options) [INFO] [stdout] 45 + translate_to_cpp(source, filename, options) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:128:16 [INFO] [stdout] | [INFO] [stdout] 128 | let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 128 - let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] 128 + let code = translate_snippet_to_cpp(source, filename, options)?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/lib.rs:143:5 [INFO] [stdout] | [INFO] [stdout] 143 | parser::translate_to_rust(source, filename, 0) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 143 - parser::translate_to_rust(source, filename, 0) [INFO] [stdout] 143 + translate_to_rust(source, filename, 0) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1171:13 [INFO] [stdout] | [INFO] [stdout] 1138 | BindingPattern::BindingIdentifier(id) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1141 | BindingPattern::ObjectPattern(object) => { [INFO] [stdout] | ------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1156 | BindingPattern::ArrayPattern(array) => { [INFO] [stdout] | ----------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1168 | BindingPattern::AssignmentPattern(assign) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1171 | _ => {} [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/codegen/analyzer.rs:1786:13 [INFO] [stdout] | [INFO] [stdout] 1767 | ChainElement::CallExpression(c) => { [INFO] [stdout] | ------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1773 | ChainElement::StaticMemberExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1776 | ChainElement::PrivateFieldExpression(m) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1779 | ChainElement::ComputedMemberExpression(m) => { [INFO] [stdout] | ----------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 1786 | _ => {} [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/codegen/js_comparison.rs:273:23 [INFO] [stdout] | [INFO] [stdout] 265 | OperandClass::Text | OperandClass::JsString => { [INFO] [stdout] | ---------------------- matches all the relevant values [INFO] [stdout] ... [INFO] [stdout] 273 | | OperandClass::JsString [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `emit_std_vector_literal` is never used [INFO] [stdout] --> src/codegen/cpp.rs:3975:8 [INFO] [stdout] | [INFO] [stdout] 107 | impl<'a> CppTranslator<'a> { [INFO] [stdout] | -------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 3975 | fn emit_std_vector_literal(&mut self, init: &Expression<'a>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `release` profile [optimized] target(s) in 12.82s [INFO] running `Command { std: "docker" "inspect" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `AnalysisResult` [INFO] [stderr] --> src/codegen/cpp.rs:5:23 [INFO] [stderr] | [INFO] [stderr] 5 | use super::analyzer::{AnalysisResult, EscapeAnalyzer, EscapeKind, WidenedType}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/codegen/cpp.rs:131:31 [INFO] [stderr] | [INFO] [stderr] 131 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-W unused-qualifications` [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 131 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stderr] 131 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/codegen/cpp.rs:2288:38 [INFO] [stderr] | [INFO] [stderr] 2288 | let param_names: std::collections::HashSet = m [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 2288 - let param_names: std::collections::HashSet = m [INFO] [stderr] 2288 + let param_names: HashSet = m [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/codegen/cpp.rs:3026:21 [INFO] [stderr] | [INFO] [stderr] 3026 | var_types: &std::collections::HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 3026 - var_types: &std::collections::HashMap, [INFO] [stderr] 3026 + var_types: &HashMap, [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/codegen/rust.rs:18:31 [INFO] [stderr] | [INFO] [stderr] 18 | fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 18 - fn span_text(&self, span: oxc_span::Span) -> &'a str { [INFO] [stderr] 18 + fn span_text(&self, span: Span) -> &'a str { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the item `SourceType` is imported redundantly [INFO] [stderr] --> src/linter.rs:4:25 [INFO] [stderr] | [INFO] [stderr] 2 | use oxc_ast::ast::*; [INFO] [stderr] | --------------- the item `SourceType` is already imported here [INFO] [stderr] 3 | use oxc_parser::Parser; [INFO] [stderr] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-W redundant-imports` [INFO] [stderr] [INFO] [stderr] warning: the item `Span` is imported redundantly [INFO] [stderr] --> src/linter.rs:4:37 [INFO] [stderr] | [INFO] [stderr] 2 | use oxc_ast::ast::*; [INFO] [stderr] | --------------- the item `Span` is already imported here [INFO] [stderr] 3 | use oxc_parser::Parser; [INFO] [stderr] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/lib.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | parser::translate_to_cpp(source, filename, options) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 45 - parser::translate_to_cpp(source, filename, options) [INFO] [stderr] 45 + translate_to_cpp(source, filename, options) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/lib.rs:128:16 [INFO] [stderr] | [INFO] [stderr] 128 | let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 128 - let code = parser::translate_snippet_to_cpp(source, filename, options)?; [INFO] [stderr] 128 + let code = translate_snippet_to_cpp(source, filename, options)?; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary qualification [INFO] [stderr] --> src/lib.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | parser::translate_to_rust(source, filename, 0) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: remove the unnecessary path segments [INFO] [stderr] | [INFO] [stderr] 143 - parser::translate_to_rust(source, filename, 0) [INFO] [stderr] 143 + translate_to_rust(source, filename, 0) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/codegen/analyzer.rs:1171:13 [INFO] [stderr] | [INFO] [stderr] 1171 | _ => {} [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/codegen/analyzer.rs:1171:13 [INFO] [stderr] | [INFO] [stderr] 1138 | BindingPattern::BindingIdentifier(id) => { [INFO] [stderr] | ------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1141 | BindingPattern::ObjectPattern(object) => { [INFO] [stderr] | ------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1156 | BindingPattern::ArrayPattern(array) => { [INFO] [stderr] | ----------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1168 | BindingPattern::AssignmentPattern(assign) => { [INFO] [stderr] | ----------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1171 | _ => {} [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/codegen/analyzer.rs:1786:13 [INFO] [stderr] | [INFO] [stderr] 1786 | _ => {} [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/codegen/analyzer.rs:1786:13 [INFO] [stderr] | [INFO] [stderr] 1767 | ChainElement::CallExpression(c) => { [INFO] [stderr] | ------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1773 | ChainElement::StaticMemberExpression(m) => { [INFO] [stderr] | --------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1776 | ChainElement::PrivateFieldExpression(m) => { [INFO] [stderr] | --------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1779 | ChainElement::ComputedMemberExpression(m) => { [INFO] [stderr] | ----------------------------------------- matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 1786 | _ => {} [INFO] [stderr] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/codegen/js_comparison.rs:273:23 [INFO] [stderr] | [INFO] [stderr] 265 | OperandClass::Text | OperandClass::JsString => { [INFO] [stderr] | ---------------------- matches all the relevant values [INFO] [stderr] ... [INFO] [stderr] 273 | | OperandClass::JsString [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] [INFO] [stderr] warning: method `emit_std_vector_literal` is never used [INFO] [stderr] --> src/codegen/cpp.rs:3975:8 [INFO] [stderr] | [INFO] [stderr] 107 | impl<'a> CppTranslator<'a> { [INFO] [stderr] | -------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 3975 | fn emit_std_vector_literal(&mut self, init: &Expression<'a>) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: the item `SourceType` is imported redundantly [INFO] [stderr] --> src/codegen/analyzer.rs:2537:9 [INFO] [stderr] | [INFO] [stderr] 2534 | use super::*; [INFO] [stderr] | -------- the item `SourceType` is already imported here [INFO] [stderr] ... [INFO] [stderr] 2537 | use oxc_span::SourceType; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: requested on the command line with `-W redundant-imports` [INFO] [stderr] [INFO] [stderr] warning: the item `SourceType` is imported redundantly [INFO] [stderr] --> src/codegen/analyzer.rs:2683:9 [INFO] [stderr] | [INFO] [stderr] 2680 | use super::*; [INFO] [stderr] | -------- the item `SourceType` is already imported here [INFO] [stderr] ... [INFO] [stderr] 2683 | use oxc_span::SourceType; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `SourceType` is imported redundantly [INFO] [stderr] --> src/linter.rs:4:25 [INFO] [stderr] | [INFO] [stderr] 2 | use oxc_ast::ast::*; [INFO] [stderr] | --------------- the item `SourceType` is already imported here [INFO] [stderr] 3 | use oxc_parser::Parser; [INFO] [stderr] 4 | use oxc_span::{GetSpan, SourceType, Span}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `morpher` (lib) generated 14 warnings (run `cargo fix --lib -p morpher` to apply 8 suggestions) [INFO] [stderr] warning: `morpher` (lib test) generated 16 warnings (13 duplicates) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.17s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/morpher-5937d47962817cd6) [INFO] [stdout] [INFO] [stdout] running 84 tests [INFO] [stdout] test codegen::analyzer::capture_tests::captures_array_destructuring_target ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_do_while_test ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_destructuring_default_init ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_new_arguments ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_object_destructuring_target ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_thrown_value ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_logical_operands ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_tagged_template_parts ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_template_expressions ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_spread_object_property ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_update_target ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::capture_through_destructured_name ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::array_destructuring_binds_names ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::class_method_body_captures_outer_variable ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_yield_argument ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_nested_function_body ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::definition_and_use_positions_recorded ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_optional_chain_base ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_dynamic_import_source ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_call_callee ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_spread_argument ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_spread_array_element ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_switch_parts ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::closure_captures_surfaced_for_move_veto ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::compound_targets_count_as_reads ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::loop_body_use_flags_variable ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::nested_read_suppresses_outer_move ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::no_split_under_branch ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::no_split_when_first_definition_literal ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::one_split_at_second_assignment ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::parameter_default_counts_as_use ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::no_split_when_later_definition_not_literal ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::object_destructuring_binds_names ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::plain_writes_are_not_reads ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_for_expression_init ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_ts_wrapper_inner ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_labeled_body ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::split_name_collides_with_future_variable ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::escaping_closure_keys_captures_to_enclosing_function ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::last_read_is_final_use ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::unknown_source_elements_stay_boxed ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::straight_line_use_leaves_loop_flag_clear ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::last_reads_keyed_per_function ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::update_targets_count_as_reads ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::literal_elements_keep_precision ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::write_only_variable_has_no_reads ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::live_after_reflects_later_reads ... ok [INFO] [stdout] test codegen::analyzer::tests::await_boundary_does_not_force_js_number ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::no_split_compound_assignment ... ok [INFO] [stdout] test codegen::analyzer::tests::await_reassignment_widens_declaration ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::returned_class_instance_marks_return ... ok [INFO] [stdout] test codegen::analyzer::lifespan_tests::no_split_when_variable_captured ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_unary_argument ... ok [INFO] [stdout] test codegen::analyzer::tests::closure_capture_marks_shared_ownership ... ok [INFO] [stdout] test codegen::analyzer::tests::length_on_string_keeps_native_type ... ok [INFO] [stdout] test codegen::analyzer::tests::plain_variable_never_escapes ... ok [INFO] [stdout] test codegen::cpp::tests::char_literal_escapes ... ok [INFO] [stdout] test codegen::analyzer::tests::literal_bounded_loop_counter_proves_range ... ok [INFO] [stdout] test codegen::analyzer::tests::returned_variable_marks_single_owner_escape ... ok [INFO] [stdout] test codegen::analyzer::tests::binary_comparison_records_signature ... ok [INFO] [stdout] test codegen::js_comparison::tests::empty_signatures_produce_no_header ... ok [INFO] [stdout] test codegen::cpp::tests::newlines_and_controls_escape ... ok [INFO] [stdout] test codegen::analyzer::tests::length_on_array_widens_to_js_array ... ok [INFO] [stdout] test codegen::cpp::tests::raw_template_text_keeps_valid_escapes ... ok [INFO] [stdout] test codegen::analyzer::tests::computed_reassignment_forfeits_int32_range ... ok [INFO] [stdout] test codegen::cpp::tests::quotes_and_backslashes_escape ... ok [INFO] [stdout] test codegen::analyzer::tests::truthy_string_test_records_signature ... ok [INFO] [stdout] test codegen::analyzer::tests::unknown_method_widens_to_js_string ... ok [INFO] [stdout] test codegen::js_comparison::tests::loose_native_signatures_enable_loose_section_only ... ok [INFO] [stdout] test codegen::js_comparison::tests::smart_pointer_wrappers_classify_by_inner_type ... ok [INFO] [stdout] test codegen::js_comparison::tests::text_signatures_enable_text_helpers ... ok [INFO] [stdout] test tests::fragment_keeps_exe_output_untouched ... ok [INFO] [stdout] test tests::fragment_keeps_includes_at_top_level ... ok [INFO] [stdout] test codegen::js_comparison::tests::cpp_type_names_map_to_expected_classes ... ok [INFO] [stdout] test tests::fragment_wraps_body_in_file_namespace ... ok [INFO] [stdout] test codegen::js_comparison::tests::js_signatures_enable_js_overloads ... ok [INFO] [stdout] test tests::fragment_namespace_sanitizes_stem ... ok [INFO] [stdout] test codegen::analyzer::tests::integer_literal_proves_int32_range ... ok [INFO] [stdout] test codegen::analyzer::tests::known_string_method_keeps_native_type ... ok [INFO] [stdout] test codegen::analyzer::capture_tests::captures_sequence_elements ... ok [INFO] [stdout] test codegen::analyzer::tests::dynamic_call_widens_to_js_number ... ok [INFO] [stdout] test tests::snippet_splits_includes_from_body ... ok [INFO] [stdout] test tests::snippet_maps_ambient_reads ... ok [INFO] [stdout] test tests::snippet_rejects_unparseable_input ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 84 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Doc-tests morpher [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; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c", kill_on_drop: false }` [INFO] [stdout] 98411f229814b4f48f2d52a4f7f2f5fd6844f1af871e21d9e0e776f920aefb0c