[INFO] cloning repository https://github.com/senzenn/clmm-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/senzenn/clmm-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsenzenn%2Fclmm-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsenzenn%2Fclmm-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 591e903a83dc45d1182dcf9e1e74eb611611649b
[INFO] testing senzenn/clmm-rust against beta-2026-04-21 for beta-1.96-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsenzenn%2Fclmm-rust" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/senzenn/clmm-rust
[INFO] finished tweaking git repo https://github.com/senzenn/clmm-rust
[INFO] tweaked toml for git repo https://github.com/senzenn/clmm-rust written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/senzenn/clmm-rust on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/senzenn/clmm-rust already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8fa08d8ae4503985eacffbcfd756f44cec354f2eb986bed1588425cc6dc36450
[INFO] running `Command { std: "docker" "start" "-a" "8fa08d8ae4503985eacffbcfd756f44cec354f2eb986bed1588425cc6dc36450", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8fa08d8ae4503985eacffbcfd756f44cec354f2eb986bed1588425cc6dc36450", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fa08d8ae4503985eacffbcfd756f44cec354f2eb986bed1588425cc6dc36450", kill_on_drop: false }`
[INFO] [stdout] 8fa08d8ae4503985eacffbcfd756f44cec354f2eb986bed1588425cc6dc36450
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 40ef1863efa293b3ca5c42de24875246bad57c908338f6df00a6fa659079a263
[INFO] running `Command { std: "docker" "start" "-a" "40ef1863efa293b3ca5c42de24875246bad57c908338f6df00a6fa659079a263", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling serde_core v1.0.227
[INFO] [stderr]    Compiling serde v1.0.227
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling hashbrown v0.16.0
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.104
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling find-msvc-tools v0.1.2
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling toml_datetime v0.7.2
[INFO] [stderr]    Compiling bitmaps v2.1.0
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling solana-frozen-abi-macro v1.18.26
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling indexmap v2.11.4
[INFO] [stderr]    Compiling sized-chunks v0.6.5
[INFO] [stderr]    Compiling solana-frozen-abi v1.18.26
[INFO] [stderr]    Compiling wasm-bindgen v0.2.104
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling bs58 v0.4.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling uint v0.9.5
[INFO] [stderr]    Compiling cc v1.2.39
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling memmap2 v0.5.10
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xoshiro v0.6.0
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling toml_parser v1.0.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling blake3 v1.8.2
[INFO] [stderr]    Compiling solana-program v1.18.26
[INFO] [stderr]    Compiling toml_edit v0.23.6
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling ark-std v0.4.0
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.104
[INFO] [stderr]    Compiling serde_derive v1.0.227
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling borsh-derive v1.5.7
[INFO] [stderr]    Compiling bytemuck_derive v1.10.1
[INFO] [stderr]    Compiling solana-sdk-macro v1.18.26
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling ark-serialize-derive v0.4.2
[INFO] [stderr]    Compiling ark-ff-asm v0.4.2
[INFO] [stderr]    Compiling ark-ff-macros v0.4.2
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]    Compiling borsh-derive v0.10.4
[INFO] [stderr]    Compiling num_enum_derive v0.5.11
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling borsh v0.10.4
[INFO] [stderr]    Compiling borsh v0.9.3
[INFO] [stderr]    Compiling zeroize v1.3.0
[INFO] [stderr]    Compiling num_enum v0.5.11
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.104
[INFO] [stderr]    Compiling bytemuck v1.23.2
[INFO] [stderr]    Compiling borsh v1.5.7
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.104
[INFO] [stderr]    Compiling bv v0.11.1
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-mac v0.8.0
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling pbkdf2 v0.4.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling hmac v0.8.1
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling curve25519-dalek v3.2.1
[INFO] [stderr]    Compiling hmac-drbg v0.3.0
[INFO] [stderr]    Compiling ark-serialize v0.4.2
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling tiny-bip39 v0.8.2
[INFO] [stderr]    Compiling ark-ff v0.4.2
[INFO] [stderr]    Compiling ark-poly v0.4.2
[INFO] [stderr]    Compiling ark-ec v0.4.2
[INFO] [stderr]    Compiling ark-bn254 v0.4.0
[INFO] [stderr]    Compiling light-poseidon v0.2.0
[INFO] [stderr]    Compiling spl-token v3.5.0
[INFO] [stderr]    Compiling clmm-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Shl`
[INFO] [stdout]  --> src/math/tick_math.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Shl;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::TryInto`
[INFO] [stdout]  --> src/math/tick_math.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::dynamic_fee::MarketDataPoint`
[INFO] [stdout]  --> src/math/multi_hop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::math::dynamic_fee::MarketDataPoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind` and `Error`
[INFO] [stdout]  --> src/state/pool.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshSerialize`
[INFO] [stdout]  --> src/state/position.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshDeserialize`
[INFO] [stdout]  --> src/state/position.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_tick`
[INFO] [stdout]   --> src/math/tick_math.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let abs_tick = if tick < 0 {
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_tick`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `r2` is never read
[INFO] [stdout]    --> src/math/tick_math.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |         r2 = (r2 * sqrt_price_x96) >> 128;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bd`
[INFO] [stdout]    --> src/math/tick_math.rs:268:13
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let bd = b_low * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> src/math/tick_math.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let bn = b_high * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ad`
[INFO] [stdout]    --> src/math/tick_math.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let ad = a_low * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_ad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `an`
[INFO] [stdout]    --> src/math/tick_math.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let an = a_high * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_an`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adjustment`
[INFO] [stdout]   --> src/math/swap.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let adjustment = DynamicFeeEngine::update_pool_fee(
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adjustment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recipient`
[INFO] [stdout]   --> src/math/swap.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         recipient: &solana_program::pubkey::Pubkey,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recipient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_tick`
[INFO] [stdout]    --> src/math/swap.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let current_tick = pool.tick;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_tick`
[INFO] [stdout]    --> src/math/swap.rs:180:14
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let (next_tick, next_sqrt_price) = if zero_for_one {
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_next_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_out`
[INFO] [stdout]    --> src/math/swap.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         amount_out: U256,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_after_fee`
[INFO] [stdout]    --> src/math/swap.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         let amount_after_fee = amount_in - fee_amount;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_after_fee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_lower`
[INFO] [stdout]    --> src/math/price_impact.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let position_price_lower = FixedPointMath::sqrt_price_x96_to_price(position_lower_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_lower`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_upper`
[INFO] [stdout]    --> src/math/price_impact.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let position_price_upper = FixedPointMath::sqrt_price_x96_to_price(position_upper_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_upper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sqrt_price_next`, `tick_next`, and `liquidity_next` are never read
[INFO] [stdout]    --> src/math/swap.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | struct SwapStepResult {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 445 |     pub sqrt_price_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 446 |     pub tick_next: i32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 447 |     pub liquidity_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SwapStepResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "40ef1863efa293b3ca5c42de24875246bad57c908338f6df00a6fa659079a263", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "40ef1863efa293b3ca5c42de24875246bad57c908338f6df00a6fa659079a263", kill_on_drop: false }`
[INFO] [stdout] 40ef1863efa293b3ca5c42de24875246bad57c908338f6df00a6fa659079a263
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c11b50c6c8f96e7285d6927a946d8b5493290b845166de2d7d75c511ab3bd292
[INFO] running `Command { std: "docker" "start" "-a" "c11b50c6c8f96e7285d6927a946d8b5493290b845166de2d7d75c511ab3bd292", kill_on_drop: false }`
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clmm-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Shl`
[INFO] [stdout]  --> src/math/tick_math.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Shl;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::TryInto`
[INFO] [stdout]  --> src/math/tick_math.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::dynamic_fee::MarketDataPoint`
[INFO] [stdout]  --> src/math/multi_hop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::math::dynamic_fee::MarketDataPoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ErrorKind` and `Error`
[INFO] [stdout]  --> src/state/pool.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshSerialize`
[INFO] [stdout]  --> src/state/position.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshDeserialize`
[INFO] [stdout]  --> src/state/position.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_tick`
[INFO] [stdout]   --> src/math/tick_math.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let abs_tick = if tick < 0 {
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_tick`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `r2` is never read
[INFO] [stdout]    --> src/math/tick_math.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |         r2 = (r2 * sqrt_price_x96) >> 128;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bd`
[INFO] [stdout]    --> src/math/tick_math.rs:268:13
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let bd = b_low * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> src/math/tick_math.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let bn = b_high * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ad`
[INFO] [stdout]    --> src/math/tick_math.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let ad = a_low * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_ad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `an`
[INFO] [stdout]    --> src/math/tick_math.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let an = a_high * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_an`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adjustment`
[INFO] [stdout]   --> src/math/swap.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let adjustment = DynamicFeeEngine::update_pool_fee(
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adjustment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recipient`
[INFO] [stdout]   --> src/math/swap.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         recipient: &solana_program::pubkey::Pubkey,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recipient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_tick`
[INFO] [stdout]    --> src/math/swap.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let current_tick = pool.tick;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_tick`
[INFO] [stdout]    --> src/math/swap.rs:180:14
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let (next_tick, next_sqrt_price) = if zero_for_one {
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_next_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_out`
[INFO] [stdout]    --> src/math/swap.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         amount_out: U256,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_after_fee`
[INFO] [stdout]    --> src/math/swap.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         let amount_after_fee = amount_in - fee_amount;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_after_fee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_lower`
[INFO] [stdout]    --> src/math/price_impact.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let position_price_lower = FixedPointMath::sqrt_price_x96_to_price(position_lower_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_lower`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_upper`
[INFO] [stdout]    --> src/math/price_impact.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let position_price_upper = FixedPointMath::sqrt_price_x96_to_price(position_upper_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_upper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sqrt_price_next`, `tick_next`, and `liquidity_next` are never read
[INFO] [stdout]    --> src/math/swap.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | struct SwapStepResult {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 445 |     pub sqrt_price_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 446 |     pub tick_next: i32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 447 |     pub liquidity_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SwapStepResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: constant `U256_ZERO` is private
[INFO] [stdout]  --> tests/fixed_point_test.rs:1:52
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clmm_rust::math::fixed_point::{FixedPointMath, U256_ZERO};
[INFO] [stdout]   |                                                    ^^^^^^^^^ private constant
[INFO] [stdout]   |
[INFO] [stdout] note: the constant `U256_ZERO` is defined here
[INFO] [stdout]  --> src/math/fixed_point.rs:2:41
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::math::tick_math::{U256, Q96, U256_ZERO, U256_ONE};
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] help: import `U256_ZERO` directly
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clmm_rust::math::fixed_point::{FixedPointMath, clmm_rust::math::tick_math::U256_ZERO};
[INFO] [stdout]   |                                                    ++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0603`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "fixed_point_test") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]  --> tests/pool_test.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]   |                         ^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]   |
[INFO] [stdout] 9 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 9 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/pool_test.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 21 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 21 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/pool_test.rs:31:25
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 31 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 31 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0423`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "pool_test") due to 3 previous errors
[INFO] [stdout] warning: unused import: `Position`
[INFO] [stdout]  --> tests/swap_test.rs:2:30
[INFO] [stdout]   |
[INFO] [stdout] 2 | use clmm_rust::state::{Pool, Position};
[INFO] [stdout]   |                              ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]  --> tests/swap_test.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]   |                     ^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]   |
[INFO] [stdout] 9 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 9 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 11 arguments but 5 arguments were supplied
[INFO] [stdout]   --> tests/swap_test.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 |       let swap_result = SwapEngine::execute_swap(
[INFO] [stdout]    |  _______________________^^^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout] 15 | |         &mut pool,
[INFO] [stdout] 16 | |         amount_in,
[INFO] [stdout] 17 | |         true, // zero_for_one
[INFO] [stdout] 18 | |         sqrt_price_limit,
[INFO] [stdout] 19 | |         &user,
[INFO] [stdout] 20 | |     ).unwrap();
[INFO] [stdout]    | |_____- multiple arguments are missing
[INFO] [stdout]    |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]   --> src/math/swap.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 |     pub fn execute_swap(
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] help: provide the arguments
[INFO] [stdout]    |
[INFO] [stdout] 14 ~     let swap_result = SwapEngine::execute_swap(
[INFO] [stdout] 15 +         &mut pool,
[INFO] [stdout] 16 +         amount_in,
[INFO] [stdout] 17 +         true,
[INFO] [stdout] 18 +         sqrt_price_limit,
[INFO] [stdout] 19 +         &user,
[INFO] [stdout] 20 +         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout] 21 +         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout] 22 +         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout] 23 +         /* &mut VecDeque<OracleObservation> */,
[INFO] [stdout] 24 +         /* u32 */,
[INFO] [stdout] 25 +         /* u64 */,
[INFO] [stdout] 26 ~     ).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/swap_test.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 31 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 31 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: constant `U256_ZERO` is private
[INFO] [stdout]  --> tests/price_impact_test.rs:1:76
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clmm_rust::math::price_impact::{PriceImpactCalculator, ImpactSeverity, U256_ZERO};
[INFO] [stdout]   |                                                                            ^^^^^^^^^ private constant
[INFO] [stdout]   |
[INFO] [stdout] note: the constant `U256_ZERO` is defined here
[INFO] [stdout]  --> src/math/price_impact.rs:1:41
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::math::tick_math::{U256, Q96, U256_ZERO};
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] help: import `U256_ZERO` directly
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clmm_rust::math::price_impact::{PriceImpactCalculator, ImpactSeverity, clmm_rust::math::tick_math::U256_ZERO};
[INFO] [stdout]   |                                                                            ++++++++++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/swap_test.rs:73:21
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 73 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 73 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/multi_hop_test.rs:49:25
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 49 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 49 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/swap_test.rs:86:21
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 86 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 86 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 11 arguments but 5 arguments were supplied
[INFO] [stdout]    --> tests/swap_test.rs:92:18
[INFO] [stdout]     |
[INFO] [stdout]  92 |       let result = SwapEngine::execute_swap(
[INFO] [stdout]     |  __________________^^^^^^^^^^^^^^^^^^^^^^^^-
[INFO] [stdout]  93 | |         &mut pool.clone(),
[INFO] [stdout]  94 | |         amount_in,
[INFO] [stdout]  95 | |         true,
[INFO] [stdout]  96 | |         sqrt_price_limit,
[INFO] [stdout]  97 | |         &user,
[INFO] [stdout]  98 | |     );
[INFO] [stdout]     | |_____- multiple arguments are missing
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> src/math/swap.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  63 |     pub fn execute_swap(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] help: provide the arguments
[INFO] [stdout]     |
[INFO] [stdout]  92 |     let result = SwapEngine::execute_swap(
[INFO] [stdout] ...
[INFO] [stdout]  97 |         &user,
[INFO] [stdout]  98 ~         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout]  99 +         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout] 100 +         /* &mut VecDeque<MarketDataPoint> */,
[INFO] [stdout] 101 +         /* &mut VecDeque<OracleObservation> */,
[INFO] [stdout] 102 +         /* u32 */,
[INFO] [stdout] 103 +         /* u64 */,
[INFO] [stdout] 104 ~     );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/multi_hop_test.rs:57:25
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 57 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 57 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]    --> tests/swap_test.rs:107:25
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout]     |                         ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]     |
[INFO] [stdout] 107 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout] 107 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]    --> tests/swap_test.rs:123:21
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]     |
[INFO] [stdout] 123 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 123 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/multi_hop_test.rs:65:25
[INFO] [stdout]    |
[INFO] [stdout] 65 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 65 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout] 65 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]    --> tests/swap_test.rs:132:21
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout]     |                     ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]     |
[INFO] [stdout] 132 -     let amount_in = U256([1000, 0, 0, 0]);
[INFO] [stdout] 132 +     let amount_in: U256([1000, 0, 0, 0]);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `I256`
[INFO] [stdout]   --> tests/tick_test.rs:21:27
[INFO] [stdout]    |
[INFO] [stdout] 21 |     tick.update_liquidity(I256([1000, 0, 0, 0]), true);
[INFO] [stdout]    |                           ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `I256`
[INFO] [stdout]   --> tests/tick_test.rs:23:36
[INFO] [stdout]    |
[INFO] [stdout] 23 |     assert_eq!(tick.liquidity_net, I256([1000, 0, 0, 0]));
[INFO] [stdout]    |                                    ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/tick_test.rs:24:38
[INFO] [stdout]    |
[INFO] [stdout] 24 |     assert_eq!(tick.liquidity_gross, U256([1000, 0, 0, 0]));
[INFO] [stdout]    |                                      ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `I256`
[INFO] [stdout]   --> tests/tick_test.rs:26:27
[INFO] [stdout]    |
[INFO] [stdout] 26 |     tick.update_liquidity(I256([500, 0, 0, 0]), false);
[INFO] [stdout]    |                           ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `I256`
[INFO] [stdout]   --> tests/tick_test.rs:27:36
[INFO] [stdout]    |
[INFO] [stdout] 27 |     assert_eq!(tick.liquidity_net, I256([500, 0, 0, 0]));
[INFO] [stdout]    |                                    ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/tick_test.rs:28:38
[INFO] [stdout]    |
[INFO] [stdout] 28 |     assert_eq!(tick.liquidity_gross, U256([1500, 0, 0, 0]));
[INFO] [stdout]    |                                      ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> tests/swap_test.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let engine = SwapEngine;
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/price_impact_test.rs:53:25
[INFO] [stdout]    |
[INFO] [stdout] 53 |     let initial_price = U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 53 -     let initial_price = U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout] 53 +     let initial_price: U256([1000000000000000000000000, 0, 0, 0]); // 1e21
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0061, E0423.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0061`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0423`.
[INFO] [stdout] 
[INFO] [stdout] error[E0382]: borrow of moved value: `pool`
[INFO] [stdout]   --> tests/multi_hop_test.rs:22:47
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let pool = create_test_pool();
[INFO] [stdout]    |         ---- move occurs because `pool` has type `Pool`, which does not implement the `Copy` trait
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     router.add_pool(pool);
[INFO] [stdout]    |                     ---- value moved here
[INFO] [stdout] ...
[INFO] [stdout] 22 |     assert!(router.routing_graph.contains_key(&pool.token_b));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^ value borrowed here after move
[INFO] [stdout]    |
[INFO] [stdout] help: consider cloning the value if the performance cost is acceptable
[INFO] [stdout]    |
[INFO] [stdout] 18 |     router.add_pool(pool.clone());
[INFO] [stdout]    |                         ++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0423, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0423`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_a`
[INFO] [stdout]   --> tests/multi_hop_test.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let token_a = Pubkey::new_unique();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_b`
[INFO] [stdout]   --> tests/multi_hop_test.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     let token_b = Pubkey::new_unique();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_c`
[INFO] [stdout]   --> tests/multi_hop_test.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let token_c = Pubkey::new_unique();
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "swap_test") due to 9 previous errors; 2 warnings emitted
[INFO] [stdout] Some errors have detailed explanations: E0382, E0423.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0382`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "multi_hop_test") due to 4 previous errors; 3 warnings emitted
[INFO] [stderr] error: could not compile `clmm-rust` (test "price_impact_test") due to 2 previous errors
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustciFjrUq/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libclmm_rust-95bbde94a7389d29,libspl_token-92add7762059656c,libnum_enum-e8bdd39e495bfe92,libchrono-a17bb27268c4a07f,libiana_time_zone-cfc0892ae7b7a99c,libuint-88eaaf0abc6386bc,libstatic_assertions-95336585f0b7f57d,libhex-3857eef967d712c2,libsolana_program-09fb0c5ee51543e0,liblibsecp256k1-a05db714a0da4a8c,libbase64-e16057db04e7cc25,libsha2-6ec66da6832fb8f2,libopaque_debug-358541d85f4133d0,libblock_buffer-f9499f2ad4ef46ad,libhmac_drbg-fa6949e8c4e8aec7,libhmac-c0124bb4ef25703a,libcrypto_mac-dbf2dc96b18b638a,librand-51d482bcd0868ff3,librand_chacha-173bf6367b028946,liblibsecp256k1_core-85ded8fd827a53cd,libcrunchy-f6c2b44df0c64c73,libcurve25519_dalek-5c7e077468aa749f,librand_core-bfe33732988a8ff4,libgetrandom-519a5e58105653ad,libdigest-a751550da7ed34fd,libbyteorder-9a5ada160ad324f0,libserde_bytes-bbbdfea30be79409,libbs58-aead71b2f6d0938f,libwasm_bindgen-b21d1474bdf70ab9,libwasm_bindgen_shared-a0949bda074d1523,libunicode_ident-5202762c38f18e99,libbitflags-ce3883ee9d40cf98,libbv-a215e15ed0d58cd6,libbase64-3c09d9a3080a6023,liblight_poseidon-71bcef57cdbf74c0,libblake3-cd067bc70901d7ef,libconstant_time_eq-8422f87570118b74,libarrayvec-fbafb981ecfa5d55,libarrayref-31df403dfa5725c1,liblazy_static-58edaf41543212f3,libsha3-4541788bf3a13e05,libkeccak-f5114e35a895b5f9,libbincode-3e9fd0481b1d332a,libsha2-574474f533db8e68,libcpufeatures-42612946e83e041b,liblog-4bfbf763d8e8be42,libborsh-0afd9b8da98d3923,libborsh-27be4edfc11464e3,libborsh-b63c22d42537c8da,libark_bn254-2029e9e8597c9d99,libark_ec-7ed4988055c49f92,libark_poly-bfd1b7b662b822ed,libhashbrown-d3a8adb63ebddfe4,libahash-73851f43524b6555,libonce_cell-9ec3b2d30075ab56,libitertools-de4971e127ca0664,libeither-e4faea0db366d8ff,libark_ff-bf1b85758c5e9bd8,libzeroize-12fd20ceaf6998ba,libbytemuck-b5fcfda3129abfc6,libark_serialize-1cf7077936dbcd42,libdigest-1bd7e972c2b228bd,libsubtle-2fc59c8da3dd643e,libblock_buffer-f361c515e54afe64,libcrypto_common-94130a770aa48f3c,libgeneric_array-5beb0fc4dfa649e7,libtypenum-e7440264430ce92d,libnum_bigint-10dcc70182c39e2e,libnum_integer-9985b140847d8cd0,libark_std-4d077937ca05cacf,libnum_traits-13e0c6dd117d8ba0,librand-4345d73b4124c5ef,librand_chacha-38e05006a54733a6,libppv_lite86-1d7606b3944c9438,libzerocopy-d741454ad2eb761b,librand_core-75dbe1655c57eebe,libgetrandom-e5d684b84a6427db,liblibc-2840315cc0fbc072,libcfg_if-64b1dcae456935ce,libserde-0224245e9e7334c1,libserde_core-ff39894df15d1647,libthiserror-97b58f4b35683374,libmemoffset-ccbf7b68730dc353}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustciFjrUq/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-c20147dfe6d8df80/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/constants_test-d5da91bcf4da045b" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: rust-lld: error: duplicate symbol: entrypoint
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            clmm_rust-95bbde94a7389d29.clmm_rust.93a25238184e1da8-cgu.03.rcgu.o:(entrypoint) in archive /opt/rustwide/target/debug/deps/libclmm_rust-95bbde94a7389d29.rlib
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            spl_token-92add7762059656c.spl_token.3cec678b893a18c2-cgu.1.rcgu.o:(.text.entrypoint+0x0) in archive /opt/rustwide/target/debug/deps/libspl_token-92add7762059656c.rlib
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "constants_test") due to 1 previous error
[INFO] [stderr] error: could not compile `clmm-rust` (test "tick_test") due to 6 previous errors
[INFO] [stdout] error[E0603]: constant `U256_ZERO` is private
[INFO] [stdout]  --> tests/position_test.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use clmm_rust::math::fixed_point::U256_ZERO;
[INFO] [stdout]   |                                   ^^^^^^^^^ private constant
[INFO] [stdout]   |
[INFO] [stdout] note: the constant `U256_ZERO` is defined here
[INFO] [stdout]  --> src/math/fixed_point.rs:2:41
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::math::tick_math::{U256, Q96, U256_ZERO, U256_ONE};
[INFO] [stdout]   |                                         ^^^^^^^^^
[INFO] [stdout] help: import `U256_ZERO` directly
[INFO] [stdout]   |
[INFO] [stdout] 3 - use clmm_rust::math::fixed_point::U256_ZERO;
[INFO] [stdout] 3 + use clmm_rust::math::tick_math::U256_ZERO;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:69:25
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let new_liquidity = U256([1000, 0, 0, 0]);
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you might have meant to use `:` for type annotation
[INFO] [stdout]    |
[INFO] [stdout] 69 -     let new_liquidity = U256([1000, 0, 0, 0]);
[INFO] [stdout] 69 +     let new_liquidity: U256([1000, 0, 0, 0]);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |     position.add_tokens_owed(U256([100, 0, 0, 0]), U256([200, 0, 0, 0]));
[INFO] [stdout]    |                              ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:74:52
[INFO] [stdout]    |
[INFO] [stdout] 74 |     position.add_tokens_owed(U256([100, 0, 0, 0]), U256([200, 0, 0, 0]));
[INFO] [stdout]    |                                                    ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:75:39
[INFO] [stdout]    |
[INFO] [stdout] 75 |     assert_eq!(position.tokens_owed0, U256([100, 0, 0, 0]));
[INFO] [stdout]    |                                       ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:76:39
[INFO] [stdout]    |
[INFO] [stdout] 76 |     assert_eq!(position.tokens_owed1, U256([200, 0, 0, 0]));
[INFO] [stdout]    |                                       ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         U256([50, 0, 0, 0]),
[INFO] [stdout]    |         ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         U256([150, 0, 0, 0]),
[INFO] [stdout]    |         ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:82:28
[INFO] [stdout]    |
[INFO] [stdout] 82 |     assert_eq!(collected0, U256([50, 0, 0, 0]));
[INFO] [stdout]    |                            ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:83:28
[INFO] [stdout]    |
[INFO] [stdout] 83 |     assert_eq!(collected1, U256([150, 0, 0, 0]));
[INFO] [stdout]    |                            ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:84:39
[INFO] [stdout]    |
[INFO] [stdout] 84 |     assert_eq!(position.tokens_owed0, U256([50, 0, 0, 0]));
[INFO] [stdout]    |                                       ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected function, tuple struct or tuple variant, found type alias `U256`
[INFO] [stdout]   --> tests/position_test.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     assert_eq!(position.tokens_owed1, U256([50, 0, 0, 0]));
[INFO] [stdout]    |                                       ^^^^ not a function, tuple struct or tuple variant
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0423, E0603.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0423`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "position_test") due to 12 previous errors
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-heap`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_heap_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_heap_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_heap_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `custom-panic`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `solana`
[INFO] [stdout]   --> src/lib.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | entrypoint!(process_instruction);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `target_os` are: `aix`, `amdhsa`, `android`, `cuda`, `cygwin`, `dragonfly`, `emscripten`, `espidf`, `freebsd`, `fuchsia`, `haiku`, `helenos`, `hermit`, `horizon`, `hurd`, `illumos`, `ios`, `l4re`, `linux`, `lynxos178`, `macos`, `managarm`, `motor`, `netbsd`, `none`, `nto`, `nuttx`, `openbsd`, `psp`, `psx`, `qurt`, `redox`, `rtems`, `solaris`, and `solid_asp3` and 14 more
[INFO] [stdout]    = note: using a cfg inside a macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `$crate::custom_panic_default` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = help: the macro `$crate::custom_panic_default` may come from an old version of the `solana_program` crate, try updating your dependency with `cargo update -p solana_program`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the macro `$crate::custom_panic_default` which comes from the expansion of the macro `entrypoint` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Shl`
[INFO] [stdout]  --> src/math/tick_math.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Shl;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::convert::TryInto`
[INFO] [stdout]  --> src/math/tick_math.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::convert::TryInto;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::dynamic_fee::MarketDataPoint`
[INFO] [stdout]  --> src/math/multi_hop.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::math::dynamic_fee::MarketDataPoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (test "tick_math_test") due to 1 previous error
[INFO] [stdout] warning: unused imports: `ErrorKind` and `Error`
[INFO] [stdout]  --> src/state/pool.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::{Error, ErrorKind};
[INFO] [stdout]   |               ^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustcJwdOco/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libclmm_rust-95bbde94a7389d29,libspl_token-92add7762059656c,libnum_enum-e8bdd39e495bfe92,libchrono-a17bb27268c4a07f,libiana_time_zone-cfc0892ae7b7a99c,libuint-88eaaf0abc6386bc,libstatic_assertions-95336585f0b7f57d,libhex-3857eef967d712c2,libsolana_program-09fb0c5ee51543e0,liblibsecp256k1-a05db714a0da4a8c,libbase64-e16057db04e7cc25,libsha2-6ec66da6832fb8f2,libopaque_debug-358541d85f4133d0,libblock_buffer-f9499f2ad4ef46ad,libhmac_drbg-fa6949e8c4e8aec7,libhmac-c0124bb4ef25703a,libcrypto_mac-dbf2dc96b18b638a,librand-51d482bcd0868ff3,librand_chacha-173bf6367b028946,liblibsecp256k1_core-85ded8fd827a53cd,libcrunchy-f6c2b44df0c64c73,libcurve25519_dalek-5c7e077468aa749f,librand_core-bfe33732988a8ff4,libgetrandom-519a5e58105653ad,libdigest-a751550da7ed34fd,libbyteorder-9a5ada160ad324f0,libserde_bytes-bbbdfea30be79409,libbs58-aead71b2f6d0938f,libwasm_bindgen-b21d1474bdf70ab9,libwasm_bindgen_shared-a0949bda074d1523,libunicode_ident-5202762c38f18e99,libbitflags-ce3883ee9d40cf98,libbv-a215e15ed0d58cd6,libbase64-3c09d9a3080a6023,liblight_poseidon-71bcef57cdbf74c0,libblake3-cd067bc70901d7ef,libconstant_time_eq-8422f87570118b74,libarrayvec-fbafb981ecfa5d55,libarrayref-31df403dfa5725c1,liblazy_static-58edaf41543212f3,libsha3-4541788bf3a13e05,libkeccak-f5114e35a895b5f9,libbincode-3e9fd0481b1d332a,libsha2-574474f533db8e68,libcpufeatures-42612946e83e041b,liblog-4bfbf763d8e8be42,libborsh-0afd9b8da98d3923,libborsh-27be4edfc11464e3,libborsh-b63c22d42537c8da,libark_bn254-2029e9e8597c9d99,libark_ec-7ed4988055c49f92,libark_poly-bfd1b7b662b822ed,libhashbrown-d3a8adb63ebddfe4,libahash-73851f43524b6555,libonce_cell-9ec3b2d30075ab56,libitertools-de4971e127ca0664,libeither-e4faea0db366d8ff,libark_ff-bf1b85758c5e9bd8,libzeroize-12fd20ceaf6998ba,libbytemuck-b5fcfda3129abfc6,libark_serialize-1cf7077936dbcd42,libdigest-1bd7e972c2b228bd,libsubtle-2fc59c8da3dd643e,libblock_buffer-f361c515e54afe64,libcrypto_common-94130a770aa48f3c,libgeneric_array-5beb0fc4dfa649e7,libtypenum-e7440264430ce92d,libnum_bigint-10dcc70182c39e2e,libnum_integer-9985b140847d8cd0,libark_std-4d077937ca05cacf,libnum_traits-13e0c6dd117d8ba0,librand-4345d73b4124c5ef,librand_chacha-38e05006a54733a6,libppv_lite86-1d7606b3944c9438,libzerocopy-d741454ad2eb761b,librand_core-75dbe1655c57eebe,libgetrandom-e5d684b84a6427db,liblibc-2840315cc0fbc072,libcfg_if-64b1dcae456935ce,libserde-0224245e9e7334c1,libserde_core-ff39894df15d1647,libthiserror-97b58f4b35683374,libmemoffset-ccbf7b68730dc353}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustcJwdOco/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-c20147dfe6d8df80/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/tick_math_test-e39bddcad6268d94" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: rust-lld: error: duplicate symbol: entrypoint
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            clmm_rust-95bbde94a7389d29.clmm_rust.93a25238184e1da8-cgu.03.rcgu.o:(entrypoint) in archive /opt/rustwide/target/debug/deps/libclmm_rust-95bbde94a7389d29.rlib
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            spl_token-92add7762059656c.spl_token.3cec678b893a18c2-cgu.1.rcgu.o:(.text.entrypoint+0x0) in archive /opt/rustwide/target/debug/deps/libspl_token-92add7762059656c.rlib
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshSerialize`
[INFO] [stdout]  --> src/state/position.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BorshDeserialize`
[INFO] [stdout]  --> src/state/position.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use borsh::{BorshDeserialize, BorshSerialize};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `abs_tick`
[INFO] [stdout]   --> src/math/tick_math.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let abs_tick = if tick < 0 {
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_abs_tick`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `r2` is never read
[INFO] [stdout]    --> src/math/tick_math.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |         r2 = (r2 * sqrt_price_x96) >> 128;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bd`
[INFO] [stdout]    --> src/math/tick_math.rs:268:13
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let bd = b_low * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> src/math/tick_math.rs:269:13
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let bn = b_high * denominator_low;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ad`
[INFO] [stdout]    --> src/math/tick_math.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let ad = a_low * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_ad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `an`
[INFO] [stdout]    --> src/math/tick_math.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |         let an = a_high * denominator_high;
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_an`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `adjustment`
[INFO] [stdout]   --> src/math/swap.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let adjustment = DynamicFeeEngine::update_pool_fee(
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_adjustment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `recipient`
[INFO] [stdout]   --> src/math/swap.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         recipient: &solana_program::pubkey::Pubkey,
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recipient`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_tick`
[INFO] [stdout]    --> src/math/swap.rs:117:13
[INFO] [stdout]     |
[INFO] [stdout] 117 |         let current_tick = pool.tick;
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `next_tick`
[INFO] [stdout]    --> src/math/swap.rs:180:14
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let (next_tick, next_sqrt_price) = if zero_for_one {
[INFO] [stdout]     |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_next_tick`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_out`
[INFO] [stdout]    --> src/math/swap.rs:403:9
[INFO] [stdout]     |
[INFO] [stdout] 403 |         amount_out: U256,
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `amount_after_fee`
[INFO] [stdout]    --> src/math/swap.rs:408:13
[INFO] [stdout]     |
[INFO] [stdout] 408 |         let amount_after_fee = amount_in - fee_amount;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_amount_after_fee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_lower`
[INFO] [stdout]    --> src/math/price_impact.rs:145:13
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let position_price_lower = FixedPointMath::sqrt_price_x96_to_price(position_lower_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_lower`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position_price_upper`
[INFO] [stdout]    --> src/math/price_impact.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |         let position_price_upper = FixedPointMath::sqrt_price_x96_to_price(position_upper_sqrt_price);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position_price_upper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sqrt_price_next`, `tick_next`, and `liquidity_next` are never read
[INFO] [stdout]    --> src/math/swap.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | struct SwapStepResult {
[INFO] [stdout]     |        -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 445 |     pub sqrt_price_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 446 |     pub tick_next: i32,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 447 |     pub liquidity_next: U256,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SwapStepResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustcPGRoIA/symbols.o" "<9 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/{libspl_token-92add7762059656c,libnum_enum-e8bdd39e495bfe92,libchrono-a17bb27268c4a07f,libiana_time_zone-cfc0892ae7b7a99c}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libuint-88eaaf0abc6386bc,libstatic_assertions-95336585f0b7f57d,libhex-3857eef967d712c2,libsolana_program-09fb0c5ee51543e0,liblibsecp256k1-a05db714a0da4a8c,libbase64-e16057db04e7cc25,libsha2-6ec66da6832fb8f2,libopaque_debug-358541d85f4133d0,libblock_buffer-f9499f2ad4ef46ad,libhmac_drbg-fa6949e8c4e8aec7,libhmac-c0124bb4ef25703a,libcrypto_mac-dbf2dc96b18b638a,librand-51d482bcd0868ff3,librand_chacha-173bf6367b028946,liblibsecp256k1_core-85ded8fd827a53cd,libcrunchy-f6c2b44df0c64c73,libcurve25519_dalek-5c7e077468aa749f,librand_core-bfe33732988a8ff4,libgetrandom-519a5e58105653ad,libdigest-a751550da7ed34fd,libbyteorder-9a5ada160ad324f0,libserde_bytes-bbbdfea30be79409,libbs58-aead71b2f6d0938f,libwasm_bindgen-b21d1474bdf70ab9,libwasm_bindgen_shared-a0949bda074d1523,libunicode_ident-5202762c38f18e99,libbitflags-ce3883ee9d40cf98,libbv-a215e15ed0d58cd6,libbase64-3c09d9a3080a6023,liblight_poseidon-71bcef57cdbf74c0,libblake3-cd067bc70901d7ef,libconstant_time_eq-8422f87570118b74,libarrayvec-fbafb981ecfa5d55,libarrayref-31df403dfa5725c1,liblazy_static-58edaf41543212f3,libsha3-4541788bf3a13e05,libkeccak-f5114e35a895b5f9,libbincode-3e9fd0481b1d332a,libsha2-574474f533db8e68,libcpufeatures-42612946e83e041b,liblog-4bfbf763d8e8be42,libborsh-0afd9b8da98d3923,libborsh-27be4edfc11464e3,libborsh-b63c22d42537c8da,libark_bn254-2029e9e8597c9d99,libark_ec-7ed4988055c49f92,libark_poly-bfd1b7b662b822ed,libhashbrown-d3a8adb63ebddfe4,libahash-73851f43524b6555,libonce_cell-9ec3b2d30075ab56,libitertools-de4971e127ca0664,libeither-e4faea0db366d8ff,libark_ff-bf1b85758c5e9bd8,libzeroize-12fd20ceaf6998ba,libbytemuck-b5fcfda3129abfc6,libark_serialize-1cf7077936dbcd42,libdigest-1bd7e972c2b228bd,libsubtle-2fc59c8da3dd643e,libblock_buffer-f361c515e54afe64,libcrypto_common-94130a770aa48f3c,libgeneric_array-5beb0fc4dfa649e7,libtypenum-e7440264430ce92d,libnum_bigint-10dcc70182c39e2e,libnum_integer-9985b140847d8cd0,libark_std-4d077937ca05cacf,libnum_traits-13e0c6dd117d8ba0,librand-4345d73b4124c5ef,librand_chacha-38e05006a54733a6,libppv_lite86-1d7606b3944c9438,libzerocopy-d741454ad2eb761b,librand_core-75dbe1655c57eebe,libgetrandom-e5d684b84a6427db,liblibc-2840315cc0fbc072,libcfg_if-64b1dcae456935ce,libserde-0224245e9e7334c1,libserde_core-ff39894df15d1647,libthiserror-97b58f4b35683374,libmemoffset-ccbf7b68730dc353}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustcPGRoIA/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-c20147dfe6d8df80/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/clmm_rust-d7611c097558c40c" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: rust-lld: error: duplicate symbol: entrypoint
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            /opt/rustwide/target/debug/deps/clmm_rust-d7611c097558c40c.clmm_rust.99536e794caee4d0-cgu.2.rcgu.o:(entrypoint)
[INFO] [stdout]           >>> defined at entrypoint.rs:129 (/opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/solana-program-1.18.26/src/entrypoint.rs:129)
[INFO] [stdout]           >>>            spl_token-92add7762059656c.spl_token.3cec678b893a18c2-cgu.1.rcgu.o:(.text.entrypoint+0x0) in archive /opt/rustwide/target/debug/deps/libspl_token-92add7762059656c.rlib
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `clmm-rust` (lib test) due to 1 previous error; 25 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c11b50c6c8f96e7285d6927a946d8b5493290b845166de2d7d75c511ab3bd292", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c11b50c6c8f96e7285d6927a946d8b5493290b845166de2d7d75c511ab3bd292", kill_on_drop: false }`
[INFO] [stdout] c11b50c6c8f96e7285d6927a946d8b5493290b845166de2d7d75c511ab3bd292
