[INFO] fetching crate libreda-sta 0.0.3... [INFO] testing libreda-sta-0.0.3 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_getrandom_patch_0 [INFO] extracting crate libreda-sta 0.0.3 into /workspace/builds/worker-1-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-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate libreda-sta 0.0.3 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 152 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.1) [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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pargraph v0.1.6 [INFO] [stderr] Downloaded portrait-codegen v0.2.3 [INFO] [stderr] Downloaded portrait-framework v0.2.1 [INFO] [stderr] Downloaded libreda-splay v0.1.1 [INFO] [stderr] Downloaded libreda-stream-parser v0.2.0 [INFO] [stderr] Downloaded libreda-interp v0.0.3 [INFO] [stderr] Downloaded iron-shapes-booleanop v0.1.0 [INFO] [stderr] Downloaded libreda-logic v0.0.3 [INFO] [stderr] Downloaded liberty-io v0.0.4 [INFO] [stderr] Downloaded libreda-db v0.0.12 [INFO] [stderr] Downloaded uom v0.36.0 [INFO] [stderr] Downloaded iron-shapes v0.1.1 [INFO] [stderr] Downloaded libreda-structural-verilog v0.0.5 [INFO] [stderr] Downloaded blanket v0.3.0 [INFO] [stderr] Downloaded rstar v0.9.3 [INFO] [stderr] Downloaded portrait v0.2.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e30cc0caa60246f4a39f55ab1fc9028205943b0a34764b81b82baefa75cc2549 [INFO] running `Command { std: "docker" "start" "-a" "e30cc0caa60246f4a39f55ab1fc9028205943b0a34764b81b82baefa75cc2549", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e30cc0caa60246f4a39f55ab1fc9028205943b0a34764b81b82baefa75cc2549", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e30cc0caa60246f4a39f55ab1fc9028205943b0a34764b81b82baefa75cc2549", kill_on_drop: false }` [INFO] [stdout] e30cc0caa60246f4a39f55ab1fc9028205943b0a34764b81b82baefa75cc2549 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] f1aede704a001a8cc30487a154fd627ebd8a63ea2a71f3cf7d4b0f8bbeb2cb0e [INFO] running `Command { std: "docker" "start" "-a" "f1aede704a001a8cc30487a154fd627ebd8a63ea2a71f3cf7d4b0f8bbeb2cb0e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling cfg-if v1.0.1 [INFO] [stderr] Compiling libc v0.2.174 [INFO] [stderr] Compiling zerocopy v0.8.26 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling heapless v0.7.17 [INFO] [stderr] Compiling hash32 v0.2.1 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Compiling stable_deref_trait v1.2.0 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling libreda-splay v0.1.1 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling rstar v0.9.3 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling libreda-stream-parser v0.2.0 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling streaming-iterator v0.1.9 [INFO] [stderr] Compiling uom v0.36.0 [INFO] [stderr] Compiling ndarray v0.15.6 [INFO] [stderr] Compiling num-derive v0.3.3 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling portrait-framework v0.2.1 [INFO] [stderr] Compiling pargraph v0.1.6 [INFO] [stderr] Compiling libreda-interp v0.0.3 [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] Compiling libreda-logic v0.0.3 [INFO] [stderr] Compiling portrait v0.2.3 [INFO] [stderr] Compiling iron-shapes v0.1.1 [INFO] [stderr] Compiling iron-shapes-booleanop v0.1.0 [INFO] [stderr] Compiling libreda-db v0.0.12 [INFO] [stderr] Compiling liberty-io v0.0.4 [INFO] [stderr] Compiling 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: `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: `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: `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: `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: 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] = note: `Ordered` 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: 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] = note: `PrefixTreeNode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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] = note: `DeviationEdges` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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] = note: `ImplicitPath` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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: 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: field `distance_to_source` is never read [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 296 | pub struct NextHop { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 297 | pub distance_to_source: D, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NextHop` 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 `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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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] = note: `EulerNode` 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: 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 `Debug` and `Clone`, 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 `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lib.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/critical_path/mod.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 349 | prefix_node: NodeIndex, [INFO] [stdout] 350 | ) -> DeviationEdges { [INFO] [stdout] | ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 350 | ) -> DeviationEdges<'_, G::NodeId, D> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be 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] | ^^^^^ this lifetime flows to the output -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for 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: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 347 | graph_node: NodeIndex, [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 10s [INFO] running `Command { std: "docker" "inspect" "f1aede704a001a8cc30487a154fd627ebd8a63ea2a71f3cf7d4b0f8bbeb2cb0e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f1aede704a001a8cc30487a154fd627ebd8a63ea2a71f3cf7d4b0f8bbeb2cb0e", kill_on_drop: false }` [INFO] [stdout] f1aede704a001a8cc30487a154fd627ebd8a63ea2a71f3cf7d4b0f8bbeb2cb0e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] a79173fc361580ad795c7b3baf2039480e76d4a3a30602c0083f1a7879c0d6fe [INFO] running `Command { std: "docker" "start" "-a" "a79173fc361580ad795c7b3baf2039480e76d4a3a30602c0083f1a7879c0d6fe", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling crunchy v0.2.4 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling ena v0.14.3 [INFO] [stderr] Compiling string_cache v0.8.9 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling pico-args v0.5.0 [INFO] [stderr] Compiling unicode-xid v0.2.6 [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: `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: `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: `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: 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] = note: `Ordered` 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: 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] = note: `PrefixTreeNode` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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] = note: `DeviationEdges` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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] = note: `ImplicitPath` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [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: 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: field `distance_to_source` is never read [INFO] [stdout] --> src/critical_path/lazy_dijkstra.rs:297:9 [INFO] [stdout] | [INFO] [stdout] 296 | pub struct NextHop { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 297 | pub distance_to_source: D, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NextHop` 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 `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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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] = note: `EulerNode` 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: 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 `Debug` and `Clone`, 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 `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lib.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/critical_path/mod.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 349 | prefix_node: NodeIndex, [INFO] [stdout] 350 | ) -> DeviationEdges { [INFO] [stdout] | ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 350 | ) -> DeviationEdges<'_, G::NodeId, D> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be 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] | ^^^^^ this lifetime flows to the output -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for 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: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 347 | graph_node: NodeIndex, [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Compiling lalrpop-util v0.20.2 [INFO] [stderr] Compiling lalrpop v0.20.2 [INFO] [stderr] Compiling libreda-structural-verilog v0.0.5 [INFO] [stderr] Compiling libreda-sta v0.0.3 (/opt/rustwide/workdir) [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] [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: `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: `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: `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: `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: 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Clone` and `Debug`, 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 `Debug` and `Clone`, 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 `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/lib.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 236 | fn top_cell_ref(&self) -> CellRef<'_, N> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/critical_path/mod.rs:348:9 [INFO] [stdout] | [INFO] [stdout] 348 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 349 | prefix_node: NodeIndex, [INFO] [stdout] 350 | ) -> DeviationEdges { [INFO] [stdout] | ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 350 | ) -> DeviationEdges<'_, G::NodeId, D> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 308 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be 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] | ^^^^^ this lifetime flows to the output -------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for 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: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:329:9 [INFO] [stdout] | [INFO] [stdout] 329 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] ... [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 332 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/timing_graph.rs:346:9 [INFO] [stdout] | [INFO] [stdout] 346 | &self, [INFO] [stdout] | ^^^^^ this lifetime flows to the output [INFO] [stdout] 347 | graph_node: NodeIndex, [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | --------------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 348 | ) -> Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `libreda-sta` (lib test); 40 warnings emitted [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/8de4c7234dd9b97c9d76b58671343fdbbc9a433e/bin/rustc --crate-name libreda_sta --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=e895ea3a8ebc5c75 -C extra-filename=-e28fc3a0ba3a204a --out-dir /opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps --target x86_64-unknown-linux-musl -L dependency=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern blanket=/opt/rustwide/target/debug/deps/libblanket-312b6956f21672b4.so --extern fnv=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libfnv-81596130b397d5c3.rlib --extern itertools=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libitertools-87e61bebde2c34d8.rlib --extern liberty_io=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libliberty_io-5ab5308f73c7bc50.rlib --extern libreda_db=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/liblibreda_db-094abde491bb871d.rlib --extern libreda_interp=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/liblibreda_interp-67dbe11bdc67aa88.rlib --extern libreda_logic=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/liblibreda_logic-0cd1fbec79091a70.rlib --extern libreda_structural_verilog=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/liblibreda_structural_verilog-6a03f6c45511574b.rlib --extern log=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/liblog-7ed48074b9f3458e.rlib --extern ndarray=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libndarray-159300d76bd76283.rlib --extern num_traits=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libnum_traits-ad52beeddf6f35ab.rlib --extern pargraph=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libpargraph-fb4fd3346732bbae.rlib --extern petgraph=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libpetgraph-455e06b2706ac337.rlib --extern smallvec=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libsmallvec-f31619fc744d118e.rlib --extern uom=/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/libuom-5ebcf4c315515075.rlib --cap-lints=forbid` (signal: 9, SIGKILL: kill) [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: linking with `cc` failed: exit status: 1 [INFO] [stdout] | [INFO] [stdout] = note: "cc" "-m64" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/rcrt1.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crti.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtbeginS.o" "/tmp/rustcYb9mGL/symbols.o" "<17 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libtest-*,libgetopts-*,libunicode_width-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/{liblibreda_structural_verilog-6a03f6c45511574b.rlib,liblalrpop_util-2c02c66220d582ac.rlib,libregex_automata-48c6e20ba5a2ffaa.rlib,libaho_corasick-dc5982531843b2f9.rlib,libmemchr-e487d4c72496bead.rlib,libregex_syntax-68ebd4ae9920c658.rlib,liblibreda_sta-15a591d2c2556e82.rlib,liblibreda_logic-0cd1fbec79091a70.rlib,libstreaming_iterator-051a01dc06337466.rlib,libuom-5ebcf4c315515075.rlib,libtypenum-946f014670f06d4a.rlib,libliberty_io-5ab5308f73c7bc50.rlib,liblibreda_stream_parser-1b25f85a179f1a8a.rlib,liblibreda_interp-67dbe11bdc67aa88.rlib,libndarray-159300d76bd76283.rlib,libmatrixmultiply-0eb415848195ff51.rlib,libnum_complex-81d493d7d5a0bfec.rlib,librawpointer-ee8696fe85e6dce4.rlib,libitertools-87e61bebde2c34d8.rlib,libpargraph-fb4fd3346732bbae.rlib,libcrossbeam_deque-7772eda2d0b2a6b9.rlib,libcrossbeam_epoch-b6388c017fb3a6af.rlib,libcrossbeam_utils-3e8757fdca4554a3.rlib,libpetgraph-455e06b2706ac337.rlib,libindexmap-fe91f3563e4dbaa4.rlib,libequivalent-c8ca4e154c540f6d.rlib,libhashbrown-217b7fa321d8dcb2.rlib,libfixedbitset-1705868b844c01b6.rlib,liblibreda_db-094abde491bb871d.rlib,liblog-7ed48074b9f3458e.rlib,librstar-afef927cf83e733b.rlib,libheapless-4adca16a58f42f0b.rlib,libstable_deref_trait-4f99d761fb096bfe.rlib,libspin-654645a24ce07df1.rlib,liblock_api-a1a42cac6aa59082.rlib,libscopeguard-339f7eb6e1fefd1f.rlib,libhash32-63f16a5409c6126c.rlib,libbyteorder-1e24148c060ae1e7.rlib,libsmallvec-f31619fc744d118e.rlib,libfnv-81596130b397d5c3.rlib,libportrait-5d770655b070f559.rlib,libiron_shapes_booleanop-c7d86855a64ea3c2.rlib,liblibreda_splay-9adf812da530e62b.rlib,libiron_shapes-e8a8e0746353eb58.rlib,libnum_rational-8af24748b4735d1a.rlib,libnum_bigint-0c0137feb5fe8a7f.rlib,libnum_integer-b904504a0c41adf0.rlib,libitertools-54f43f3a8ab00de6.rlib,libeither-da399c10ae937dac.rlib,libserde-c16969735db2825d.rlib,libnum_traits-ad52beeddf6f35ab.rlib}.rlib" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*}.rlib" "-lunwind" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{libcfg_if-*,liblibc-*}.rlib" "-lc" "/lib/rustlib/x86_64-unknown-linux-musl/lib/{librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-L" "/tmp/rustcYb9mGL/raw-dylibs" "-Wl,-Bdynamic" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-nostartfiles" "-L" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained" "-L" "/lib/rustlib/x86_64-unknown-linux-musl/lib" "-o" "/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/test_sta-f98eff9e87449a23" "-Wl,--gc-sections" "-static-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtendS.o" "/lib/rustlib/x86_64-unknown-linux-musl/lib/self-contained/crtn.o" [INFO] [stdout] = note: some arguments are omitted. use `--verbose` to show all linker arguments [INFO] [stdout] = note: collect2: fatal error: ld terminated with signal 9 [Killed] [INFO] [stdout] compilation terminated. [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `libreda-sta` (test "test_sta") due to 1 previous error [INFO] running `Command { std: "docker" "inspect" "a79173fc361580ad795c7b3baf2039480e76d4a3a30602c0083f1a7879c0d6fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a79173fc361580ad795c7b3baf2039480e76d4a3a30602c0083f1a7879c0d6fe", kill_on_drop: false }` [INFO] [stdout] a79173fc361580ad795c7b3baf2039480e76d4a3a30602c0083f1a7879c0d6fe