[INFO] updating cached repository granite-zero/satoshiDiceSimulator [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/granite-zero/satoshiDiceSimulator [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/granite-zero/satoshiDiceSimulator" "work/ex/clippy-test-run/sources/stable/gh/granite-zero/satoshiDiceSimulator"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/granite-zero/satoshiDiceSimulator'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/granite-zero/satoshiDiceSimulator" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/granite-zero/satoshiDiceSimulator"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/granite-zero/satoshiDiceSimulator'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 9d2ae1006f741eccbeb93b6c5f442024e615cc5a [INFO] sha for GitHub repo granite-zero/satoshiDiceSimulator: 9d2ae1006f741eccbeb93b6c5f442024e615cc5a [INFO] validating manifest of granite-zero/satoshiDiceSimulator on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of granite-zero/satoshiDiceSimulator on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing granite-zero/satoshiDiceSimulator [INFO] finished frobbing granite-zero/satoshiDiceSimulator [INFO] frobbed toml for granite-zero/satoshiDiceSimulator written to work/ex/clippy-test-run/sources/stable/gh/granite-zero/satoshiDiceSimulator/Cargo.toml [INFO] started frobbing granite-zero/satoshiDiceSimulator [INFO] finished frobbing granite-zero/satoshiDiceSimulator [INFO] frobbed toml for granite-zero/satoshiDiceSimulator written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/granite-zero/satoshiDiceSimulator/Cargo.toml [INFO] crate granite-zero/satoshiDiceSimulator has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting granite-zero/satoshiDiceSimulator against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/granite-zero/satoshiDiceSimulator:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] ddd37e99b9c1ce7d12ad7119579247d4485b16b961b12851d52daa3763a8d99c [INFO] running `"docker" "start" "-a" "ddd37e99b9c1ce7d12ad7119579247d4485b16b961b12851d52daa3763a8d99c"` [INFO] [stderr] Checking satoshi_dice_simulator v2.2.0 (/opt/crater/workdir) [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/main.rs:17:15 [INFO] [stderr] | [INFO] [stderr] 17 | const USAGE: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:191:59 [INFO] [stderr] | [INFO] [stderr] 191 | println!("{},{:.4},{}", total, total as f64 * 0.00000001, counter); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:207:73 [INFO] [stderr] | [INFO] [stderr] 207 | let maximum_possible_loss_btc: f64 = maximum_possible_loss as f64 * 0.00000001; //in whole Bitcoins [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:251:46 [INFO] [stderr] | [INFO] [stderr] 251 | let average_win_btc: f64 = average_win * 0.00000001; //to whole bitcoin [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:297:5 [INFO] [stderr] | [INFO] [stderr] 297 | sum [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:295:15 [INFO] [stderr] | [INFO] [stderr] 295 | let sum = results_vector.iter().fold(0, |a, &b| a + b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:327:20 [INFO] [stderr] | [INFO] [stderr] 327 | Some(x) => return x, [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:328:17 [INFO] [stderr] | [INFO] [stderr] 328 | None => return 0, [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:402:5 [INFO] [stderr] | [INFO] [stderr] 402 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:394:18 [INFO] [stderr] | [INFO] [stderr] 394 | let result = RollResult { [INFO] [stderr] | __________________^ [INFO] [stderr] 395 | | less_than_setting: less_than, [INFO] [stderr] 396 | | profit: total_profit, [INFO] [stderr] 397 | | max_drawdown: drawdown(&thread_results_vector), [INFO] [stderr] 398 | | number_of_rolls: rolls, [INFO] [stderr] 399 | | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] 400 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:469:5 [INFO] [stderr] | [INFO] [stderr] 469 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:461:18 [INFO] [stderr] | [INFO] [stderr] 461 | let result = RollResult { [INFO] [stderr] | __________________^ [INFO] [stderr] 462 | | less_than_setting: less_than, [INFO] [stderr] 463 | | profit: total_profit, [INFO] [stderr] 464 | | max_drawdown: drawdown(&thread_results_vector), [INFO] [stderr] 465 | | number_of_rolls: rolls, [INFO] [stderr] 466 | | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] 467 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: Constants have by default a `'static` lifetime [INFO] [stderr] --> src/main.rs:17:15 [INFO] [stderr] | [INFO] [stderr] 17 | const USAGE: &'static str = [INFO] [stderr] | -^^^^^^^---- help: consider removing `'static`: `&str` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::const_static_lifetime)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#const_static_lifetime [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:191:59 [INFO] [stderr] | [INFO] [stderr] 191 | println!("{},{:.4},{}", total, total as f64 * 0.00000001, counter); [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:207:73 [INFO] [stderr] | [INFO] [stderr] 207 | let maximum_possible_loss_btc: f64 = maximum_possible_loss as f64 * 0.00000001; //in whole Bitcoins [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:251:46 [INFO] [stderr] | [INFO] [stderr] 251 | let average_win_btc: f64 = average_win * 0.00000001; //to whole bitcoin [INFO] [stderr] | ^^^^^^^^^^ help: consider: `0.000_000_01` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:297:5 [INFO] [stderr] | [INFO] [stderr] 297 | sum [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::let_and_return)] on by default [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:295:15 [INFO] [stderr] | [INFO] [stderr] 295 | let sum = results_vector.iter().fold(0, |a, &b| a + b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:327:20 [INFO] [stderr] | [INFO] [stderr] 327 | Some(x) => return x, [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `x` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/main.rs:328:17 [INFO] [stderr] | [INFO] [stderr] 328 | None => return 0, [INFO] [stderr] | ^^^^^^^^ help: remove `return` as shown: `0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:402:5 [INFO] [stderr] | [INFO] [stderr] 402 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:394:18 [INFO] [stderr] | [INFO] [stderr] 394 | let result = RollResult { [INFO] [stderr] | __________________^ [INFO] [stderr] 395 | | less_than_setting: less_than, [INFO] [stderr] 396 | | profit: total_profit, [INFO] [stderr] 397 | | max_drawdown: drawdown(&thread_results_vector), [INFO] [stderr] 398 | | number_of_rolls: rolls, [INFO] [stderr] 399 | | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] 400 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: returning the result of a let binding from a block. Consider returning the expression directly. [INFO] [stderr] --> src/main.rs:469:5 [INFO] [stderr] | [INFO] [stderr] 469 | result [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: this expression can be directly returned [INFO] [stderr] --> src/main.rs:461:18 [INFO] [stderr] | [INFO] [stderr] 461 | let result = RollResult { [INFO] [stderr] | __________________^ [INFO] [stderr] 462 | | less_than_setting: less_than, [INFO] [stderr] 463 | | profit: total_profit, [INFO] [stderr] 464 | | max_drawdown: drawdown(&thread_results_vector), [INFO] [stderr] 465 | | number_of_rolls: rolls, [INFO] [stderr] 466 | | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] 467 | | }; [INFO] [stderr] | |_____^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:503:45 [INFO] [stderr] | [INFO] [stderr] 503 | assert_eq!(test_probability_of_win, 0.00152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: consider: `0.001_525_878_906_25` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:526:45 [INFO] [stderr] | [INFO] [stderr] 526 | assert_eq!(test_probability_of_win, 0.152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: consider: `0.152_587_890_625` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:550:45 [INFO] [stderr] | [INFO] [stderr] 550 | assert_eq!(test_probability_of_win, 1.52587890625); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `1.525_878_906_25` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:551:44 [INFO] [stderr] | [INFO] [stderr] 551 | assert_eq!(test_profit_multiplier, 63.29081599999999); //site x64.2908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider: `63.290_815_999_999_99` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:573:45 [INFO] [stderr] | [INFO] [stderr] 573 | assert_eq!(test_probability_of_win, 15.2587890625); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `15.258_789_062_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:574:44 [INFO] [stderr] | [INFO] [stderr] 574 | assert_eq!(test_profit_multiplier, 5.4290816); //site x6.42908 [INFO] [stderr] | ^^^^^^^^^ help: consider: `5.429_081_6` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:598:45 [INFO] [stderr] | [INFO] [stderr] 598 | assert_eq!(test_probability_of_win, 76.2939453125); [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider: `76.293_945_312_5` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:599:44 [INFO] [stderr] | [INFO] [stderr] 599 | assert_eq!(test_profit_multiplier, 0.2858163200000001); //site x1.2852 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: consider: `0.285_816_320_000_000_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:622:45 [INFO] [stderr] | [INFO] [stderr] 622 | assert_eq!(test_probability_of_win, 97.99957275390625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: consider: `97.999_572_753_906_25` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/main.rs:623:44 [INFO] [stderr] | [INFO] [stderr] 623 | assert_eq!(test_profit_multiplier, 0.0010247722849356933); //site x1.00102 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: consider: `0.001_024_772_284_935_693_3` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:97:8 [INFO] [stderr] | [INFO] [stderr] 97 | if args.flag_p == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_p` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:102:8 [INFO] [stderr] | [INFO] [stderr] 102 | if args.flag_d == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:108:8 [INFO] [stderr] | [INFO] [stderr] 108 | if args.flag_i == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_i` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:120:8 [INFO] [stderr] | [INFO] [stderr] 120 | if args.flag_r == true && args.flag_e == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:120:31 [INFO] [stderr] | [INFO] [stderr] 120 | if args.flag_r == true && args.flag_e == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:15 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:41 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:67 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | if args.flag_e == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:142:8 [INFO] [stderr] | [INFO] [stderr] 142 | if args.flag_w == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:169:40 [INFO] [stderr] | [INFO] [stderr] 169 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:170:40 [INFO] [stderr] | [INFO] [stderr] 170 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:175:31 [INFO] [stderr] | [INFO] [stderr] 175 | result = (bet as f64 * calculate_payout_multiplier(1).round()) as i64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:178:34 [INFO] [stderr] | [INFO] [stderr] 178 | result = 0 - bet as i64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:207:42 [INFO] [stderr] | [INFO] [stderr] 207 | let maximum_possible_loss_btc: f64 = maximum_possible_loss as f64 * 0.00000001; //in whole Bitcoins [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(maximum_possible_loss)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:221:40 [INFO] [stderr] | [INFO] [stderr] 221 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:222:40 [INFO] [stderr] | [INFO] [stderr] 222 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:227:49 [INFO] [stderr] | [INFO] [stderr] 227 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:230:52 [INFO] [stderr] | [INFO] [stderr] 230 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:275:51 [INFO] [stderr] | [INFO] [stderr] 275 | fn average_of_profitable_runs(sim_results_vector: &Vec) -> (f64, f64) { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i64]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:293:31 [INFO] [stderr] | [INFO] [stderr] 293 | fn sum_vector(results_vector: &Vec) -> i64 { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i64]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this `.fold` can be written more succinctly using another method [INFO] [stderr] --> src/main.rs:295:36 [INFO] [stderr] | [INFO] [stderr] 295 | let sum = results_vector.iter().fold(0, |a, &b| a + b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.sum()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_fold)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | fn drawdown(results_vector: &Vec) -> i64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 301 | fn drawdown(results_vector: &[i64]) -> i64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] help: change `results_vector.clone()` to [INFO] [stderr] | [INFO] [stderr] 303 | let mut drawdown_vector: Vec = results_vector.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/main.rs:306:5 [INFO] [stderr] | [INFO] [stderr] 306 | / loop { [INFO] [stderr] 307 | | [INFO] [stderr] 308 | | match drawdown_vector.pop() { [INFO] [stderr] 309 | | [INFO] [stderr] ... | [INFO] [stderr] 319 | | [INFO] [stderr] 320 | | } [INFO] [stderr] | |_____^ help: try: `while let Some(_) = drawdown_vector.pop() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:339:65 [INFO] [stderr] | [INFO] [stderr] 339 | let payout_multiplier: f64 = (((1.00 * (65535.00 + 1.00)) / less_than as f64) * [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:365:40 [INFO] [stderr] | [INFO] [stderr] 365 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:366:40 [INFO] [stderr] | [INFO] [stderr] 366 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:371:49 [INFO] [stderr] | [INFO] [stderr] 371 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:374:52 [INFO] [stderr] | [INFO] [stderr] 374 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:399:48 [INFO] [stderr] | [INFO] [stderr] 399 | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(rolls * THREAD_BLOCK)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:438:49 [INFO] [stderr] | [INFO] [stderr] 438 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:441:52 [INFO] [stderr] | [INFO] [stderr] 441 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:466:48 [INFO] [stderr] | [INFO] [stderr] 466 | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(rolls * THREAD_BLOCK)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:97:8 [INFO] [stderr] | [INFO] [stderr] 97 | if args.flag_p == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_p` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::bool_comparison)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:102:8 [INFO] [stderr] | [INFO] [stderr] 102 | if args.flag_d == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_d` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:108:8 [INFO] [stderr] | [INFO] [stderr] 108 | if args.flag_i == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_i` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:120:8 [INFO] [stderr] | [INFO] [stderr] 120 | if args.flag_r == true && args.flag_e == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:120:31 [INFO] [stderr] | [INFO] [stderr] 120 | if args.flag_r == true && args.flag_e == false { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:15 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_r` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:41 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against false can be replaced by a negation [INFO] [stderr] --> src/main.rs:126:67 [INFO] [stderr] | [INFO] [stderr] 126 | } else if (args.flag_r == false) && (args.flag_e == false) && (args.flag_w == false) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `!args.flag_w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:135:8 [INFO] [stderr] | [INFO] [stderr] 135 | if args.flag_e == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_e` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: equality checks against true are unnecessary [INFO] [stderr] --> src/main.rs:142:8 [INFO] [stderr] | [INFO] [stderr] 142 | if args.flag_w == true { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `args.flag_w` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:169:40 [INFO] [stderr] | [INFO] [stderr] 169 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:170:40 [INFO] [stderr] | [INFO] [stderr] 170 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:175:31 [INFO] [stderr] | [INFO] [stderr] 175 | result = (bet as f64 * calculate_payout_multiplier(1).round()) as i64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:178:34 [INFO] [stderr] | [INFO] [stderr] 178 | result = 0 - bet as i64; [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:207:42 [INFO] [stderr] | [INFO] [stderr] 207 | let maximum_possible_loss_btc: f64 = maximum_possible_loss as f64 * 0.00000001; //in whole Bitcoins [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(maximum_possible_loss)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:221:40 [INFO] [stderr] | [INFO] [stderr] 221 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:222:40 [INFO] [stderr] | [INFO] [stderr] 222 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:227:49 [INFO] [stderr] | [INFO] [stderr] 227 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:230:52 [INFO] [stderr] | [INFO] [stderr] 230 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:275:51 [INFO] [stderr] | [INFO] [stderr] 275 | fn average_of_profitable_runs(sim_results_vector: &Vec) -> (f64, f64) { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i64]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:293:31 [INFO] [stderr] | [INFO] [stderr] 293 | fn sum_vector(results_vector: &Vec) -> i64 { [INFO] [stderr] | ^^^^^^^^^ help: change this to: `&[i64]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: this `.fold` can be written more succinctly using another method [INFO] [stderr] --> src/main.rs:295:36 [INFO] [stderr] | [INFO] [stderr] 295 | let sum = results_vector.iter().fold(0, |a, &b| a + b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.sum()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unnecessary_fold)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_fold [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/main.rs:301:29 [INFO] [stderr] | [INFO] [stderr] 301 | fn drawdown(results_vector: &Vec) -> i64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] help: change this to [INFO] [stderr] | [INFO] [stderr] 301 | fn drawdown(results_vector: &[i64]) -> i64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] help: change `results_vector.clone()` to [INFO] [stderr] | [INFO] [stderr] 303 | let mut drawdown_vector: Vec = results_vector.to_owned(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: this loop could be written as a `while let` loop [INFO] [stderr] --> src/main.rs:306:5 [INFO] [stderr] | [INFO] [stderr] 306 | / loop { [INFO] [stderr] 307 | | [INFO] [stderr] 308 | | match drawdown_vector.pop() { [INFO] [stderr] 309 | | [INFO] [stderr] ... | [INFO] [stderr] 319 | | [INFO] [stderr] 320 | | } [INFO] [stderr] | |_____^ help: try: `while let Some(_) = drawdown_vector.pop() { .. }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::while_let_loop)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#while_let_loop [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:339:65 [INFO] [stderr] | [INFO] [stderr] 339 | let payout_multiplier: f64 = (((1.00 * (65535.00 + 1.00)) / less_than as f64) * [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: try: `f64::from(less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:365:40 [INFO] [stderr] | [INFO] [stderr] 365 | let client_roll: u32 = rng.gen::() as u32; //SERVER roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u16 to u32 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:366:40 [INFO] [stderr] | [INFO] [stderr] 366 | let server_roll: u32 = rng.gen::() as u32; //CLIENT roll [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::from(rng.gen::())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:371:49 [INFO] [stderr] | [INFO] [stderr] 371 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:374:52 [INFO] [stderr] | [INFO] [stderr] 374 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:399:48 [INFO] [stderr] | [INFO] [stderr] 399 | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(rolls * THREAD_BLOCK)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:438:49 [INFO] [stderr] | [INFO] [stderr] 438 | thread_results_vector.push(((bet as f64) * payout_multiplier).round() as i64); [INFO] [stderr] | ^^^^^^^^^^^^ help: try: `f64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to i64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:441:52 [INFO] [stderr] | [INFO] [stderr] 441 | thread_results_vector.push(0 - bet as i64); [INFO] [stderr] | ^^^^^^^^^^ help: try: `i64::from(bet)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:466:48 [INFO] [stderr] | [INFO] [stderr] 466 | profit_per_roll: total_profit as f64 / (rolls * THREAD_BLOCK) as f64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(rolls * THREAD_BLOCK)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:486:39 [INFO] [stderr] | [INFO] [stderr] 486 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:503:9 [INFO] [stderr] | [INFO] [stderr] 503 | assert_eq!(test_probability_of_win, 0.00152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:503:9 [INFO] [stderr] | [INFO] [stderr] 503 | assert_eq!(test_probability_of_win, 0.00152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:504:9 [INFO] [stderr] | [INFO] [stderr] 504 | assert_eq!(test_profit_multiplier, 64289.816); //site x64290.8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:504:9 [INFO] [stderr] | [INFO] [stderr] 504 | assert_eq!(test_profit_multiplier, 64289.816); //site x64290.8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:510:39 [INFO] [stderr] | [INFO] [stderr] 510 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:526:9 [INFO] [stderr] | [INFO] [stderr] 526 | assert_eq!(test_probability_of_win, 0.152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:526:9 [INFO] [stderr] | [INFO] [stderr] 526 | assert_eq!(test_probability_of_win, 0.152587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:527:9 [INFO] [stderr] | [INFO] [stderr] 527 | assert_eq!(test_profit_multiplier, 641.90816); //site x642.908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:527:9 [INFO] [stderr] | [INFO] [stderr] 527 | assert_eq!(test_profit_multiplier, 641.90816); //site x642.908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:534:39 [INFO] [stderr] | [INFO] [stderr] 534 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:550:9 [INFO] [stderr] | [INFO] [stderr] 550 | assert_eq!(test_probability_of_win, 1.52587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:550:9 [INFO] [stderr] | [INFO] [stderr] 550 | assert_eq!(test_probability_of_win, 1.52587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:551:9 [INFO] [stderr] | [INFO] [stderr] 551 | assert_eq!(test_profit_multiplier, 63.29081599999999); //site x64.2908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:551:9 [INFO] [stderr] | [INFO] [stderr] 551 | assert_eq!(test_profit_multiplier, 63.29081599999999); //site x64.2908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:557:39 [INFO] [stderr] | [INFO] [stderr] 557 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:573:9 [INFO] [stderr] | [INFO] [stderr] 573 | assert_eq!(test_probability_of_win, 15.2587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:573:9 [INFO] [stderr] | [INFO] [stderr] 573 | assert_eq!(test_probability_of_win, 15.2587890625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:574:9 [INFO] [stderr] | [INFO] [stderr] 574 | assert_eq!(test_profit_multiplier, 5.4290816); //site x6.42908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:574:9 [INFO] [stderr] | [INFO] [stderr] 574 | assert_eq!(test_profit_multiplier, 5.4290816); //site x6.42908 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:582:39 [INFO] [stderr] | [INFO] [stderr] 582 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:598:9 [INFO] [stderr] | [INFO] [stderr] 598 | assert_eq!(test_probability_of_win, 76.2939453125); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:598:9 [INFO] [stderr] | [INFO] [stderr] 598 | assert_eq!(test_probability_of_win, 76.2939453125); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:599:9 [INFO] [stderr] | [INFO] [stderr] 599 | assert_eq!(test_profit_multiplier, 0.2858163200000001); //site x1.2852 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:599:9 [INFO] [stderr] | [INFO] [stderr] 599 | assert_eq!(test_profit_multiplier, 0.2858163200000001); //site x1.2852 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: casting u32 to f64 may become silently lossy if types change [INFO] [stderr] --> src/main.rs:606:39 [INFO] [stderr] | [INFO] [stderr] 606 | let test_probability_of_win = test_less_than as f64 / 65536.0 * 100.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: try: `f64::from(test_less_than)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:622:9 [INFO] [stderr] | [INFO] [stderr] 622 | assert_eq!(test_probability_of_win, 97.99957275390625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:622:9 [INFO] [stderr] | [INFO] [stderr] 622 | assert_eq!(test_probability_of_win, 97.99957275390625); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/main.rs:623:9 [INFO] [stderr] | [INFO] [stderr] 623 | assert_eq!(test_profit_multiplier, 0.0010247722849356933); //site x1.00102 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/main.rs:623:9 [INFO] [stderr] | [INFO] [stderr] 623 | assert_eq!(test_profit_multiplier, 0.0010247722849356933); //site x1.00102 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to 12 previous errors [INFO] [stderr] [INFO] [stderr] error: Could not compile `satoshi_dice_simulator`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "ddd37e99b9c1ce7d12ad7119579247d4485b16b961b12851d52daa3763a8d99c"` [INFO] running `"docker" "rm" "-f" "ddd37e99b9c1ce7d12ad7119579247d4485b16b961b12851d52daa3763a8d99c"` [INFO] [stdout] ddd37e99b9c1ce7d12ad7119579247d4485b16b961b12851d52daa3763a8d99c