[INFO] fetching crate libreda-sta 0.0.3... [INFO] checking libreda-sta-0.0.3 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342-1 [INFO] extracting crate libreda-sta 0.0.3 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate libreda-sta 0.0.3 [INFO] finished tweaking crates.io crate libreda-sta 0.0.3 [INFO] tweaked toml for crates.io crate libreda-sta 0.0.3 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate libreda-sta 0.0.3 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 161 packages to latest compatible versions [INFO] [stderr] Adding blanket v0.3.0 (available: v0.4.0) [INFO] [stderr] Adding itertools v0.10.5 (available: v0.14.0) [INFO] [stderr] Adding ndarray v0.15.6 (available: v0.16.1) [INFO] [stderr] Adding petgraph v0.6.5 (available: v0.8.2) [INFO] [stderr] Adding regex v1.10.6 (available: v1.11.2) [INFO] [stderr] Adding uom v0.36.0 (available: v0.37.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded portrait-codegen v0.2.3 [INFO] [stderr] Downloaded iron-shapes-booleanop v0.1.0 [INFO] [stderr] Downloaded portrait-framework v0.2.1 [INFO] [stderr] Downloaded libreda-splay v0.1.1 [INFO] [stderr] Downloaded libreda-structural-verilog v0.0.5 [INFO] [stderr] Downloaded portrait v0.2.3 [INFO] [stderr] Downloaded libreda-stream-parser v0.2.0 [INFO] [stderr] Downloaded libreda-interp v0.0.3 [INFO] [stderr] Downloaded libreda-logic v0.0.3 [INFO] [stderr] Downloaded liberty-io v0.0.4 [INFO] [stderr] Downloaded iron-shapes v0.1.1 [INFO] [stderr] Downloaded libreda-db v0.0.12 [INFO] [stderr] Downloaded pargraph v0.1.6 [INFO] [stderr] Downloaded rstar v0.9.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5eec4ba69beae4484907f5132536c6d64372ff5c4acfe736c86a5ba5d7f41143 [INFO] running `Command { std: "docker" "start" "-a" "5eec4ba69beae4484907f5132536c6d64372ff5c4acfe736c86a5ba5d7f41143", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5eec4ba69beae4484907f5132536c6d64372ff5c4acfe736c86a5ba5d7f41143", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5eec4ba69beae4484907f5132536c6d64372ff5c4acfe736c86a5ba5d7f41143", kill_on_drop: false }` [INFO] [stdout] 5eec4ba69beae4484907f5132536c6d64372ff5c4acfe736c86a5ba5d7f41143 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 32c2045171a1fb5bbc19b096761eb9ace888fa719cde27a497ab9b33aa623e7b [INFO] running `Command { std: "docker" "start" "-a" "32c2045171a1fb5bbc19b096761eb9ace888fa719cde27a497ab9b33aa623e7b", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.5.0 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling cfg-if v1.0.3 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Checking either v1.15.0 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Compiling regex-syntax v0.8.6 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Checking hash32 v0.2.1 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Checking libreda-splay v0.1.1 [INFO] [stderr] Compiling heapless v0.7.17 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling indexmap v2.11.0 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling ena v0.14.3 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Checking rstar v0.9.3 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Compiling string_cache v0.8.9 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling pico-args v0.5.0 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking libreda-stream-parser v0.2.0 [INFO] [stderr] Compiling regex-automata v0.4.10 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking streaming-iterator v0.1.9 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Checking ndarray v0.15.6 [INFO] [stderr] Checking num-rational v0.4.2 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Checking uom v0.36.0 [INFO] [stderr] Checking pargraph v0.1.6 [INFO] [stderr] Compiling portrait-framework v0.2.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling portrait-codegen v0.2.3 [INFO] [stderr] Compiling blanket v0.3.0 [INFO] [stderr] Checking libreda-logic v0.0.3 [INFO] [stderr] Compiling lalrpop-util v0.20.2 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Checking portrait v0.2.3 [INFO] [stderr] Compiling lalrpop v0.20.2 [INFO] [stderr] Checking libreda-interp v0.0.3 [INFO] [stderr] Checking iron-shapes v0.1.1 [INFO] [stderr] Checking iron-shapes-booleanop v0.1.0 [INFO] [stderr] Checking libreda-db v0.0.12 [INFO] [stderr] Checking liberty-io v0.0.4 [INFO] [stderr] Compiling libreda-structural-verilog v0.0.5 [INFO] [stderr] Checking libreda-sta v0.0.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/liberty_library/import.rs:462:26 [INFO] [stdout] | [INFO] [stdout] 462 | if let Some((f, var_names)) = &output_function { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/liberty_library/import.rs:462:26 [INFO] [stdout] | [INFO] [stdout] 462 | if let Some((f, var_names)) = &output_function { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/liberty_library/mod.rs:531:9 [INFO] [stdout] | [INFO] [stdout] 531 | output_load: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/liberty_library/mod.rs:542:9 [INFO] [stdout] | [INFO] [stdout] 542 | output_load: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/liberty_library/mod.rs:531:9 [INFO] [stdout] | [INFO] [stdout] 531 | output_load: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/liberty_library/mod.rs:542:9 [INFO] [stdout] | [INFO] [stdout] 542 | output_load: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `timing_library` [INFO] [stdout] --> src/liberty_library/mod.rs:569:9 [INFO] [stdout] | [INFO] [stdout] 569 | let timing_library = LibertyTimingLibrary::new(&library, cell_by_name, pin_by_name).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timing_library` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cell_fall` [INFO] [stdout] --> src/liberty_library/mod.rs:651:9 [INFO] [stdout] | [INFO] [stdout] 651 | let cell_fall = arc_a_y.cell_fall.as_ref().unwrap(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_fall` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/models/nldm_cell_delay.rs:485:47 [INFO] [stdout] | [INFO] [stdout] 485 | if let SignalTransitionType::Constant(c) = input_signal.transition_type() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/models/nldm_cell_delay.rs:485:47 [INFO] [stdout] | [INFO] [stdout] 485 | if let SignalTransitionType::Constant(c) = input_signal.transition_type() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/models/zero_interconnect_delay.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | output_load: &Self::Load, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/signal_propagation.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | let output_load = C::Load::zero(); // TODO [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/models/zero_interconnect_delay.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | output_load: &Self::Load, [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_load` [INFO] [stdout] --> src/signal_propagation.rs:315:25 [INFO] [stdout] | [INFO] [stdout] 315 | let output_load = C::Load::zero(); // TODO [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_load` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `constraint_node_data` [INFO] [stdout] --> src/signal_propagation.rs:618:36 [INFO] [stdout] | [INFO] [stdout] 618 | |(constraint_edge, constraint_node_data)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constraint_node_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `constraint_node_data` [INFO] [stdout] --> src/signal_propagation.rs:618:36 [INFO] [stdout] | [INFO] [stdout] 618 | |(constraint_edge, constraint_node_data)| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_constraint_node_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clock_id` [INFO] [stdout] --> src/lib.rs:209:41 [INFO] [stdout] | [INFO] [stdout] 209 | pub fn report_critical_paths(&self, clock_id: ClockId, setup_hold: SetupHold) -> () { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clock_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `setup_hold` [INFO] [stdout] --> src/lib.rs:209:60 [INFO] [stdout] | [INFO] [stdout] 209 | pub fn report_critical_paths(&self, clock_id: ClockId, setup_hold: SetupHold) -> () { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_setup_hold` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nodes` [INFO] [stdout] --> src/lib.rs:566:26 [INFO] [stdout] | [INFO] [stdout] 566 | if let Some(&nodes) = self.timing_graph.term2node.get(&terminal) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clock_id` [INFO] [stdout] --> src/lib.rs:209:41 [INFO] [stdout] | [INFO] [stdout] 209 | pub fn report_critical_paths(&self, clock_id: ClockId, setup_hold: SetupHold) -> () { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clock_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `setup_hold` [INFO] [stdout] --> src/lib.rs:209:60 [INFO] [stdout] | [INFO] [stdout] 209 | pub fn report_critical_paths(&self, clock_id: ClockId, setup_hold: SetupHold) -> () { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_setup_hold` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaf_cell` [INFO] [stdout] --> src/lib.rs:787:13 [INFO] [stdout] | [INFO] [stdout] 787 | for leaf_cell in top.each_cell_dependency() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:785:13 [INFO] [stdout] | [INFO] [stdout] 785 | let mut missing_cells: FnvHashSet = Default::default(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `load1` [INFO] [stdout] --> src/lib.rs:842:25 [INFO] [stdout] | [INFO] [stdout] 842 | fn sum_loads(&self, load1: &Self::Load, load2: &Self::Load) -> Self::Load { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_load1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `load2` [INFO] [stdout] --> src/lib.rs:842:45 [INFO] [stdout] | [INFO] [stdout] 842 | fn sum_loads(&self, load1: &Self::Load, load2: &Self::Load) -> Self::Load { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_load2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `nodes` [INFO] [stdout] --> src/lib.rs:566:26 [INFO] [stdout] | [INFO] [stdout] 566 | if let Some(&nodes) = self.timing_graph.term2node.get(&terminal) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_nodes` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaf_cell` [INFO] [stdout] --> src/lib.rs:787:13 [INFO] [stdout] | [INFO] [stdout] 787 | for leaf_cell in top.each_cell_dependency() { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_cell` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:785:13 [INFO] [stdout] | [INFO] [stdout] 785 | let mut missing_cells: FnvHashSet = Default::default(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `load1` [INFO] [stdout] --> src/lib.rs:842:25 [INFO] [stdout] | [INFO] [stdout] 842 | fn sum_loads(&self, load1: &Self::Load, load2: &Self::Load) -> Self::Load { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_load1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `load2` [INFO] [stdout] --> src/lib.rs:842:45 [INFO] [stdout] | [INFO] [stdout] 842 | fn sum_loads(&self, load1: &Self::Load, load2: &Self::Load) -> Self::Load { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_load2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shape_id` [INFO] [stdout] --> src/lib.rs:1181:32 [INFO] [stdout] | [INFO] [stdout] 1181 | fn remove_shape(&mut self, shape_id: &Self::ShapeId) -> Option> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shape_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `toposort_delay_graph` and `debug_print_actual_signals` are never used [INFO] [stdout] --> src/lib.rs:665:8 [INFO] [stdout] | [INFO] [stdout] 305 | / impl SimpleSTA [INFO] [stdout] 306 | | where [INFO] [stdout] 307 | | N: NetlistBase, [INFO] [stdout] 308 | | Lib: CellLoadModel + CellDelayModel + CellConstraintModel + LogicModel, [INFO] [stdout] 309 | | Lib::LogicValue: LogicOps + From + TryInto, [INFO] [stdout] | |___________________________________________________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 665 | fn toposort_delay_graph(&self) -> Result>, StaError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | fn debug_print_actual_signals(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `propagate_cones` is never used [INFO] [stdout] --> src/cone_propagation.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub(crate) fn propagate_cones( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `nodes` is never used [INFO] [stdout] --> src/critical_path/mod.rs:570:8 [INFO] [stdout] | [INFO] [stdout] 562 | / impl ImplicitPath [INFO] [stdout] 563 | | where [INFO] [stdout] 564 | | F: Fn(&NodeId) -> Option>, [INFO] [stdout] 565 | | Dist: PartialEq + Clone, [INFO] [stdout] 566 | | NodeId: PartialEq + Copy, [INFO] [stdout] 567 | | Deviations: Iterator> + Clone, [INFO] [stdout] | |________________________________________________________________- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 570 | fn nodes(self) -> impl Iterator { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LevelizeOp` is never constructed [INFO] [stdout] --> src/levelization.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct LevelizeOp { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AtomicNodeLevel` is never used [INFO] [stdout] --> src/levelization.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait AtomicNodeLevel { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cell_name` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 157 | pub(crate) struct Cell { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 162 | cell_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cell` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `next_state` and `num_bits` are never read [INFO] [stdout] --> src/liberty_library/mod.rs:219:5 [INFO] [stdout] | [INFO] [stdout] 214 | pub(crate) struct FlipFlop { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 219 | next_state: BooleanExpr, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | num_bits: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FlipFlop` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_in` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:239:5 [INFO] [stdout] | [INFO] [stdout] 233 | pub(crate) struct Latch { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 239 | data_in: BooleanExpr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Latch` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pin_name` and `capacitance` are never read [INFO] [stdout] --> src/liberty_library/mod.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 246 | pub struct Pin { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 247 | pin_name: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub(crate) capacitance: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pin` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `size` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:318:5 [INFO] [stdout] | [INFO] [stdout] 312 | struct LuTableTemplate { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 318 | size: (usize, usize), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LuTableTemplate` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pin_id` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 335 | struct PinImportContext<'a, CellId, PinId> { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 336 | cell_context: &'a CellImportContext<'a, CellId, PinId>, [INFO] [stdout] 337 | pin_id: &'a PinId, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `take_array` and `sub_lut_index` are never used [INFO] [stdout] --> src/lowest_common_ancestor/argmin_lut.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 15 | / impl<'a, A, T> ArgMinRange [INFO] [stdout] 16 | | where [INFO] [stdout] 17 | | A: AsRef<[T]>, [INFO] [stdout] 18 | | T: Ord, [INFO] [stdout] | |___________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn take_array(self) -> A { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn sub_lut_index(&self, start: usize, range_len: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `jitter` is never read [INFO] [stdout] --> src/models/clock_tag.rs:530:5 [INFO] [stdout] | [INFO] [stdout] 528 | struct PrimaryClockDefinition { [INFO] [stdout] | ---------------------- field in this struct [INFO] [stdout] 529 | period: Time, [INFO] [stdout] 530 | jitter: Time, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrimaryClockDefinition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sta_mode` is never read [INFO] [stdout] --> src/models/nldm_cell_delay.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct NLDMCellModel<'a, N: NetlistIds> { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 29 | sta_mode: StaMode, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NLDMCellModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `summarize_arrival_time` and `acc_slew` are never used [INFO] [stdout] --> src/models/nldm_cell_delay.rs:162:8 [INFO] [stdout] | [INFO] [stdout] 99 | impl NLDMSignal { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 162 | fn summarize_arrival_time(&mut self, arrival_time: Time) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | fn acc_slew(&mut self, slew: Time) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `select_timing_groups` is never used [INFO] [stdout] --> src/liberty_util.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn select_timing_groups<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `forward_level` is never read [INFO] [stdout] --> src/timing_graph.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub(crate) struct NodeData [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 45 | pub forward_level: AtomicU32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_num_unresolved` is never used [INFO] [stdout] --> src/timing_graph.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 97 | impl DependencyCounter { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn set_num_unresolved(&self, num_unresolved: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `constraint` is never read [INFO] [stdout] --> src/timing_graph.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 224 | pub(crate) struct SyncEdgeData [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 229 | pub constraint: Option, // TODO: remove [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SyncEdgeData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/lib.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef { [INFO] [stdout] | ^^^^^ ---------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/critical_path/mod.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] 349 | prefix_node: NodeIndex, [INFO] [stdout] 350 | ) -> DeviationEdges { [INFO] [stdout] | ---------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 350 | ) -> DeviationEdges<'_, G::NodeId, D> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `shape_id` [INFO] [stdout] --> src/lib.rs:1181:32 [INFO] [stdout] | [INFO] [stdout] 1181 | fn remove_shape(&mut self, shape_id: &Self::ShapeId) -> Option> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shape_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | -------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:315:26 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn get_node_data(&self, graph_node: NodeIndex) -> Option>> { [INFO] [stdout] | ^^^^^ the lifetime is elided here -------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 315 | pub fn get_node_data(&self, graph_node: NodeIndex) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] 347 | graph_node: NodeIndex, [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `toposort_delay_graph` and `debug_print_actual_signals` are never used [INFO] [stdout] --> src/lib.rs:665:8 [INFO] [stdout] | [INFO] [stdout] 305 | / impl SimpleSTA [INFO] [stdout] 306 | | where [INFO] [stdout] 307 | | N: NetlistBase, [INFO] [stdout] 308 | | Lib: CellLoadModel + CellDelayModel + CellConstraintModel + LogicModel, [INFO] [stdout] 309 | | Lib::LogicValue: LogicOps + From + TryInto, [INFO] [stdout] | |___________________________________________________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 665 | fn toposort_delay_graph(&self) -> Result>, StaError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | fn debug_print_actual_signals(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `propagate_cones` is never used [INFO] [stdout] --> src/cone_propagation.rs:35:15 [INFO] [stdout] | [INFO] [stdout] 35 | pub(crate) fn propagate_cones( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `critical_paths` is never used [INFO] [stdout] --> src/critical_path/mod.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn critical_paths( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shortest_paths` is never used [INFO] [stdout] --> src/critical_path/mod.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn shortest_paths( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `longest_paths` is never used [INFO] [stdout] --> src/critical_path/mod.rs:87:8 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn longest_paths<'f, G, F, D>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Ordered` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:182:19 [INFO] [stdout] | [INFO] [stdout] 182 | pub(super) struct Ordered(O, T); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `PrefixTree` is never used [INFO] [stdout] --> src/critical_path/mod.rs:224:6 [INFO] [stdout] | [INFO] [stdout] 224 | type PrefixTree = StableDiGraph, ()>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CriticalPaths` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:226:12 [INFO] [stdout] | [INFO] [stdout] 226 | pub struct CriticalPaths [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PrefixTreeNode` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:276:8 [INFO] [stdout] | [INFO] [stdout] 276 | struct PrefixTreeNode { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/critical_path/mod.rs:286:8 [INFO] [stdout] | [INFO] [stdout] 285 | impl PrefixTreeNode { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 286 | fn new(a: N, b: N, cost: D) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DeviationEdges` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:301:8 [INFO] [stdout] | [INFO] [stdout] 301 | struct DeviationEdges<'a, NodeId, D> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `deviation_edges_from_prefix_node`, `path_from_prefix_node`, `path_cost_from_prefix_node_naive`, `next_path`, and `next_prefix_node` are never used [INFO] [stdout] --> src/critical_path/mod.rs:347:8 [INFO] [stdout] | [INFO] [stdout] 338 | / impl CriticalPaths [INFO] [stdout] 339 | | where [INFO] [stdout] 340 | | G: IntoEdgesDirected + Visitable, [INFO] [stdout] 341 | | G::NodeId: Hash + Eq + PartialEq, [INFO] [stdout] 342 | | D: Measure + Copy, [INFO] [stdout] 343 | | F: Fn(G::EdgeRef) -> D, [INFO] [stdout] | |___________________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 347 | fn deviation_edges_from_prefix_node( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 359 | fn path_from_prefix_node( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | fn path_cost_from_prefix_node_naive(&self, prefix_node: NodeIndex) -> D { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 397 | fn next_path(&mut self) -> Option>> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 523 | fn next_prefix_node(&mut self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImplicitPath` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:537:8 [INFO] [stdout] | [INFO] [stdout] 537 | struct ImplicitPath { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `nodes` is never used [INFO] [stdout] --> src/critical_path/mod.rs:570:8 [INFO] [stdout] | [INFO] [stdout] 562 | / impl ImplicitPath [INFO] [stdout] 563 | | where [INFO] [stdout] 564 | | F: Fn(&NodeId) -> Option>, [INFO] [stdout] 565 | | Dist: PartialEq + Clone, [INFO] [stdout] 566 | | NodeId: PartialEq + Copy, [INFO] [stdout] 567 | | Deviations: Iterator> + Clone, [INFO] [stdout] | |________________________________________________________________- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 570 | fn nodes(self) -> impl Iterator { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ImplicitPathIter` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:577:8 [INFO] [stdout] | [INFO] [stdout] 577 | struct ImplicitPathIter [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PathEdge` is never constructed [INFO] [stdout] --> src/critical_path/mod.rs:631:12 [INFO] [stdout] | [INFO] [stdout] 631 | pub struct PathEdge { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `reversed` is never used [INFO] [stdout] --> src/critical_path/mod.rs:639:8 [INFO] [stdout] | [INFO] [stdout] 637 | impl PathEdge { [INFO] [stdout] | ----------------------------------- method in this implementation [INFO] [stdout] 638 | /// Swap source and target nodes. [INFO] [stdout] 639 | fn reversed(self) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `backtrack_with_deviations` is never used [INFO] [stdout] --> src/critical_path/mod.rs:664:4 [INFO] [stdout] | [INFO] [stdout] 664 | fn backtrack_with_deviations( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Lazy` is never constructed [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Lazy; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Precomputed` is never constructed [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Precomputed; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Dijkstra` is never constructed [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct Dijkstra [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 63 | / impl Dijkstra [INFO] [stdout] 64 | | where [INFO] [stdout] 65 | | G: GraphBase + Visitable + IntoEdges, [INFO] [stdout] 66 | | D: Measure, [INFO] [stdout] 67 | | F: Fn(G::EdgeRef) -> D, [INFO] [stdout] | |___________________________- associated function in this implementation [INFO] [stdout] 68 | { [INFO] [stdout] 69 | pub fn new(graph: G, start: G::NodeId, edge_cost: F) -> Dijkstra { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next_hop` is never used [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 84 | / impl Dijkstra [INFO] [stdout] 85 | | where [INFO] [stdout] 86 | | G: IntoEdges + Visitable, [INFO] [stdout] 87 | | G::NodeId: Eq + Hash, [INFO] [stdout] 88 | | F: Fn(G::EdgeRef) -> D, [INFO] [stdout] 89 | | D: Measure + Copy, [INFO] [stdout] | |______________________- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn next_hop(&self, dest: &G::NodeId) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `next_hop` and `precompute` are never used [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 97 | / impl Dijkstra [INFO] [stdout] 98 | | where [INFO] [stdout] 99 | | G: IntoEdges + Visitable, [INFO] [stdout] 100 | | G::NodeId: Eq + Hash, [INFO] [stdout] 101 | | F: Fn(G::EdgeRef) -> D, [INFO] [stdout] 102 | | D: Measure + Copy, [INFO] [stdout] | |______________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn next_hop(&mut self, dest: &G::NodeId) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn precompute(mut self) -> Dijkstra { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `allow_negative_weights`, `next_hop_cached`, and `search_next_hop` are never used [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:138:12 [INFO] [stdout] | [INFO] [stdout] 130 | / impl Dijkstra [INFO] [stdout] 131 | | where [INFO] [stdout] 132 | | G: IntoEdges + Visitable, [INFO] [stdout] 133 | | G::NodeId: Eq + Hash, [INFO] [stdout] 134 | | F: Fn(G::EdgeRef) -> D, [INFO] [stdout] 135 | | D: Measure + Copy, [INFO] [stdout] | |______________________- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 138 | pub fn allow_negative_weights(self, allow: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn next_hop_cached(&self, dest: &G::NodeId) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | fn search_next_hop(&mut self, dest: &G::NodeId) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dijkstra` is never used [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:238:8 [INFO] [stdout] | [INFO] [stdout] 238 | pub fn dijkstra( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NextHop` is never constructed [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:296:12 [INFO] [stdout] | [INFO] [stdout] 296 | pub struct NextHop { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LevelizeOp` is never constructed [INFO] [stdout] --> src/levelization.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct LevelizeOp { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `AtomicNodeLevel` is never used [INFO] [stdout] --> src/levelization.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub trait AtomicNodeLevel { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cell_name` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 157 | pub(crate) struct Cell { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 162 | cell_name: String, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cell` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `next_state` and `num_bits` are never read [INFO] [stdout] --> src/liberty_library/mod.rs:219:5 [INFO] [stdout] | [INFO] [stdout] 214 | pub(crate) struct FlipFlop { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 219 | next_state: BooleanExpr, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 227 | num_bits: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FlipFlop` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_in` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:239:5 [INFO] [stdout] | [INFO] [stdout] 233 | pub(crate) struct Latch { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 239 | data_in: BooleanExpr, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Latch` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pin_name` and `capacitance` are never read [INFO] [stdout] --> src/liberty_library/mod.rs:247:5 [INFO] [stdout] | [INFO] [stdout] 246 | pub struct Pin { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] 247 | pin_name: String, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 251 | pub(crate) capacitance: Capacitance, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Pin` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `size` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:318:5 [INFO] [stdout] | [INFO] [stdout] 312 | struct LuTableTemplate { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 318 | size: (usize, usize), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LuTableTemplate` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pin_id` is never read [INFO] [stdout] --> src/liberty_library/mod.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 335 | struct PinImportContext<'a, CellId, PinId> { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 336 | cell_context: &'a CellImportContext<'a, CellId, PinId>, [INFO] [stdout] 337 | pin_id: &'a PinId, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LowestCommonAncestor` is never constructed [INFO] [stdout] --> src/lowest_common_ancestor/mod.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub struct LowestCommonAncestor [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EulerNode` is never constructed [INFO] [stdout] --> src/lowest_common_ancestor/mod.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 31 | struct EulerNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/lowest_common_ancestor/mod.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl EulerNode { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 39 | pub fn new(node: T, level: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `new_with_direction`, and `lowest_common_ancestor` are never used [INFO] [stdout] --> src/lowest_common_ancestor/mod.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 64 | / impl LowestCommonAncestor [INFO] [stdout] 65 | | where [INFO] [stdout] 66 | | G: IntoEdgesDirected, [INFO] [stdout] 67 | | G::NodeId: Eq + Hash, [INFO] [stdout] | |_________________________- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn new(graph: G, root: G::NodeId) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn new_with_direction( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn lowest_common_ancestor(&self, a: &G::NodeId, b: &G::NodeId) -> &G::NodeId { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `levelized_euler_tour_tree` is never used [INFO] [stdout] --> src/lowest_common_ancestor/mod.rs:155:4 [INFO] [stdout] | [INFO] [stdout] 155 | fn levelized_euler_tour_tree( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ArgMinRange` is never constructed [INFO] [stdout] --> src/lowest_common_ancestor/argmin_lut.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct ArgMinRange { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/lowest_common_ancestor/argmin_lut.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 15 | / impl<'a, A, T> ArgMinRange [INFO] [stdout] 16 | | where [INFO] [stdout] 17 | | A: AsRef<[T]>, [INFO] [stdout] 18 | | T: Ord, [INFO] [stdout] | |___________- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn new(array: A) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn min(&self, start: usize, range_len: usize) -> &T { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn argmin(&self, start: usize, range_len: usize) -> usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn array(&self) -> &[T] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn take_array(self) -> A { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn build_lut(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | fn get_index(&self, window_size_log2: u32, window_position: usize) -> (usize, u32, u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | fn get_argmin_in_window(&self, window_size_log2: u32, window_start: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | fn set_argmin_in_window(&mut self, window_size_log2: u32, window_start: usize, argmin: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | fn get_bits(word: usize, bit_offset: u32, bit_length: u32) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | fn set_bits(word: usize, value: usize, bit_offset: u32, bit_length: u32) -> usize { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 174 | fn allocate_lut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | fn required_storage_for_window_size( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | fn num_bits_for_offset(window_size_log2: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | fn num_windows(&self, window_size: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn sub_lut_index(&self, start: usize, range_len: usize) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `jitter` is never read [INFO] [stdout] --> src/models/clock_tag.rs:530:5 [INFO] [stdout] | [INFO] [stdout] 528 | struct PrimaryClockDefinition { [INFO] [stdout] | ---------------------- field in this struct [INFO] [stdout] 529 | period: Time, [INFO] [stdout] 530 | jitter: Time, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PrimaryClockDefinition` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `sta_mode` is never read [INFO] [stdout] --> src/models/nldm_cell_delay.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct NLDMCellModel<'a, N: NetlistIds> { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] 29 | sta_mode: StaMode, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NLDMCellModel` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `summarize_arrival_time` and `acc_slew` are never used [INFO] [stdout] --> src/models/nldm_cell_delay.rs:162:8 [INFO] [stdout] | [INFO] [stdout] 99 | impl NLDMSignal { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 162 | fn summarize_arrival_time(&mut self, arrival_time: Time) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | fn acc_slew(&mut self, slew: Time) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `select_timing_groups` is never used [INFO] [stdout] --> src/liberty_util.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub fn select_timing_groups<'a>( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `forward_level` is never read [INFO] [stdout] --> src/timing_graph.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub(crate) struct NodeData [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 45 | pub forward_level: AtomicU32, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_num_unresolved` is never used [INFO] [stdout] --> src/timing_graph.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 97 | impl DependencyCounter { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn set_num_unresolved(&self, num_unresolved: u32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `constraint` is never read [INFO] [stdout] --> src/timing_graph.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 224 | pub(crate) struct SyncEdgeData [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 229 | pub constraint: Option, // TODO: remove [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SyncEdgeData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/lib.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef { [INFO] [stdout] | ^^^^^ ---------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/critical_path/mod.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] 349 | prefix_node: NodeIndex, [INFO] [stdout] 350 | ) -> DeviationEdges { [INFO] [stdout] | ---------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 350 | ) -> DeviationEdges<'_, G::NodeId, D> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | -------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:315:26 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn get_node_data(&self, graph_node: NodeIndex) -> Option>> { [INFO] [stdout] | ^^^^^ the lifetime is elided here -------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 315 | pub fn get_node_data(&self, graph_node: NodeIndex) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] ... [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/timing_graph.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | &self, [INFO] [stdout] | ^^^^^ the lifetime is elided here [INFO] [stdout] 347 | graph_node: NodeIndex, [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the same lifetime is hidden here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MinMax` and `NLDMRequiredSignal` [INFO] [stdout] --> tests/test_flipflop_setup_hold.rs:8:44 [INFO] [stdout] | [INFO] [stdout] 8 | use libreda_sta::models::nldm_cell_delay::{MinMax, NLDMRequiredSignal, NLDMSignal}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RequiredSignalArg` [INFO] [stdout] --> tests/test_flipflop_setup_hold.rs:14:49 [INFO] [stdout] | [INFO] [stdout] 14 | use libreda_sta::{ClockDefinition, InputSignal, RequiredSignalArg}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `out1` [INFO] [stdout] --> tests/test_flipflop_setup_hold.rs:62:20 [INFO] [stdout] | [INFO] [stdout] 62 | let [clk, in1, out1] = [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_out1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clk_id` [INFO] [stdout] --> tests/test_flipflop_setup_hold.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | let clk_id = sta.create_clock( [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_clk_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 00s [INFO] running `Command { std: "docker" "inspect" "32c2045171a1fb5bbc19b096761eb9ace888fa719cde27a497ab9b33aa623e7b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32c2045171a1fb5bbc19b096761eb9ace888fa719cde27a497ab9b33aa623e7b", kill_on_drop: false }` [INFO] [stdout] 32c2045171a1fb5bbc19b096761eb9ace888fa719cde27a497ab9b33aa623e7b