Skip to content

ch2-mandelbrot: could not compile num-bigint (lib) due to 4 previous errors #115

@honsour72

Description

@honsour72

Hello there, I just want to run mandelbrot code but after I did cargo run I get this output:

   Compiling num-bigint v0.3.0
error[E0308]: mismatched types                                                                                                                                                                       
    --> C:\Users\user\.cargo\registry\src\index.crates.io-6f17d22bba15001f\num-bigint-0.3.0\src\biguint.rs:198:19
     |
198  |         .div_ceil(&big_digit::BITS.into())
     |          -------- ^^^^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `&_`
     |          |
     |          arguments to this method are incorrect
     |
     = note:   expected type `u64`
             found reference `&_`
note: method defined here
    --> C:\Users\user\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library\core\src\num\mod.rs:1166:5
     |
1166 | /     uint_impl! {
1167 | |         Self = u64,
1168 | |         ActualT = u64,
1169 | |         SignedT = i64,
...    |
1183 | |         bound_condition = "",
1184 | |     }
     | |_____^
     = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider removing the borrow
     |
198  -         .div_ceil(&big_digit::BITS.into())
198  +         .div_ceil(big_digit::BITS.into())
     |

error[E0308]: mismatched types                                                                                                                                                                       
    --> C:\Users\user\.cargo\registry\src\index.crates.io-6f17d22bba15001f\num-bigint-0.3.0\src\biguint.rs:1700:50
     |
1700 |             let root_scale = extra_bits.div_ceil(&n64);
     |                                         -------- ^^^^ expected `u64`, found `&u64`
     |                                         |
     |                                         arguments to this method are incorrect
     |
note: method defined here
    --> C:\Users\user\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library\core\src\num\mod.rs:1166:5
     |
1166 | /     uint_impl! {
1167 | |         Self = u64,
1168 | |         ActualT = u64,
1169 | |         SignedT = i64,
...    |
1183 | |         bound_condition = "",
1184 | |     }
     | |_____^
     = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider removing the borrow
     |
1700 -             let root_scale = extra_bits.div_ceil(&n64);
1700 +             let root_scale = extra_bits.div_ceil(n64);
     |

error[E0308]: mismatched types
    --> C:\Users\user\.cargo\registry\src\index.crates.io-6f17d22bba15001f\num-bigint-0.3.0\src\biguint.rs:2119:19
     |
2119 |         .div_ceil(&u64::from(bits))
     |          -------- ^^^^^^^^^^^^^^^^ expected `u64`, found `&u64`
     |          |
     |          arguments to this method are incorrect
     |
note: method defined here
    --> C:\Users\user\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library\core\src\num\mod.rs:1166:5
     |
1166 | /     uint_impl! {
1167 | |         Self = u64,
1168 | |         ActualT = u64,
1169 | |         SignedT = i64,
...    |
1183 | |         bound_condition = "",
1184 | |     }
     | |_____^
     = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider removing the borrow
     |
2119 -         .div_ceil(&u64::from(bits))
2119 +         .div_ceil(u64::from(bits))
     |

error[E0308]: mismatched types
    --> C:\Users\user\.cargo\registry\src\index.crates.io-6f17d22bba15001f\num-bigint-0.3.0\src\biguint.rs:2147:19
     |
2147 |         .div_ceil(&u64::from(bits))
     |          -------- ^^^^^^^^^^^^^^^^ expected `u64`, found `&u64`
     |          |
     |          arguments to this method are incorrect
     |
note: method defined here
    --> C:\Users\user\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library\core\src\num\mod.rs:1166:5
     |
1166 | /     uint_impl! {
1167 | |         Self = u64,
1168 | |         ActualT = u64,
1169 | |         SignedT = i64,
...    |
1183 | |         bound_condition = "",
1184 | |     }
     | |_____^
     = note: this error originates in the macro `uint_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider removing the borrow
     |
2147 -         .div_ceil(&u64::from(bits))
2147 +         .div_ceil(u64::from(bits))
     |

For more information about this error, try `rustc --explain E0308`.                                                                                                                                  
error: could not compile `num-bigint` (lib) due to 4 previous errors

I don't understand which line of my code provides this error 🤷‍♂️

I use RustRover from JetBrains and attach Cargo.toml:

[package]
name = "ch2-mandelbrot"
version = "0.1.0"
authors = ["Tim McNamara <author@rustinaction.com>"]
edition = "2018"

[dependencies]
num = "0.3"

Everything I did before are:

  1. cargo install cargo-edit
  2. cargo add num
  3. cargo run

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions