[INFO] fetching crate classgroup 0.1.0...
[INFO] checking classgroup-0.1.0 against master#30f74ff0dc4d66debc8b50724c446f817e5f75f4 for pr-121848-1
[INFO] extracting crate classgroup 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate classgroup 0.1.0 on toolchain 30f74ff0dc4d66debc8b50724c446f817e5f75f4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate classgroup 0.1.0
[INFO] finished tweaking crates.io crate classgroup 0.1.0
[INFO] tweaked toml for crates.io crate classgroup 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 99c0dfed06c2420cd04e8a2a43fe9c7ed9adfb0d041f18e4fc38f613d079fbfc
[INFO] running `Command { std: "docker" "start" "-a" "99c0dfed06c2420cd04e8a2a43fe9c7ed9adfb0d041f18e4fc38f613d079fbfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "99c0dfed06c2420cd04e8a2a43fe9c7ed9adfb0d041f18e4fc38f613d079fbfc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "99c0dfed06c2420cd04e8a2a43fe9c7ed9adfb0d041f18e4fc38f613d079fbfc", kill_on_drop: false }`
[INFO] [stdout] 99c0dfed06c2420cd04e8a2a43fe9c7ed9adfb0d041f18e4fc38f613d079fbfc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+30f74ff0dc4d66debc8b50724c446f817e5f75f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ab535109f8c90c2466129086aeb8561c587834587beba8c1566f1b45155bf87b
[INFO] running `Command { std: "docker" "start" "-a" "ab535109f8c90c2466129086aeb8561c587834587beba8c1566f1b45155bf87b", kill_on_drop: false }`
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]     Checking classgroup v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]  --> src/gmp/mpz.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::From;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `From` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/gmp/mpz.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{uninitialized,size_of};
[INFO] [stdout]   |                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/gmp/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![warn(deprecated)]
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:33
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gmp/mpz.rs:487:40
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static Error> {
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static dyn Error> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/gmp/mpz.rs:478:14
[INFO] [stdout]     |
[INFO] [stdout] 478 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/gmp_classgroup/mod.rs:376:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let mut s = Clone::clone(self.borrow());
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `GmpClassGroup` does not implement `Borrow`, so calling `borrow` on `&GmpClassGroup` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 376 -         let mut s = Clone::clone(self.borrow());
[INFO] [stdout] 376 +         let mut s = Clone::clone(self);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `GmpClassGroup`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct GmpClassGroup {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `usize` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:28
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this code causes undefined behavior when executed
[INFO] [stdout]     |                            help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_sizeinbase` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn __gmpz_sizeinbase(op: &Mpz, base: c_int) -> size_t;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn __gmpz_sizeinbase(op: mpz_srcptr, base: c_int) -> size_t;
[INFO] [stdout]    |     ----------------------------------------------------------- `__gmpz_sizeinbase` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*const mpz_struct, i32) -> usize`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(&'a Mpz, i32) -> usize`
[INFO] [stdout]    = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_export` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | /     fn __gmpz_export(
[INFO] [stdout] 58 | |         rop: *mut c_void,
[INFO] [stdout] 59 | |         countp: *mut size_t,
[INFO] [stdout] 60 | |         order: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |         op: &Mpz,
[INFO] [stdout] 65 | |     ) -> *mut c_void;
[INFO] [stdout]    | |____________________^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 | /     fn __gmpz_export(rop: *mut c_void, countp: *mut size_t, order: c_int, size: size_t, 
[INFO] [stdout] 92 | |                      endian: c_int, nails: size_t, op: mpz_srcptr);
[INFO] [stdout]    | |__________________________________________________________________- `__gmpz_export` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, *const mpz_struct)`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, &'a Mpz) -> *mut c_void`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking serde_json v1.0.115
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `gmp`
[INFO] [stdout]   --> bench/bench.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use gmp::mpz::Mpz;
[INFO] [stdout]    |     ^^^ use of undeclared crate or module `gmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> bench/bench.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `classgroup` (bench "classgroup-bench") due to 2 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]  --> src/gmp/mpz.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::From;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `From` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `std` is imported redundantly
[INFO] [stdout]  --> src/gmp/test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std;
[INFO] [stdout]   |     ^^^ the item `std` is already defined by prelude
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/gmp/test.rs:23:24
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use std::convert::{From, Into};
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout]   --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Into` is imported redundantly
[INFO] [stdout]   --> src/gmp/test.rs:23:30
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use std::convert::{From, Into};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]   --> /rustc/30f74ff0dc4d66debc8b50724c446f817e5f75f4/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `Into` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/gmp/mpz.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{uninitialized,size_of};
[INFO] [stdout]   |                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/gmp/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![warn(deprecated)]
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:33
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gmp/mpz.rs:487:40
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static Error> {
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static dyn Error> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/gmp/mpz.rs:478:14
[INFO] [stdout]     |
[INFO] [stdout] 478 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/gmp_classgroup/mod.rs:376:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let mut s = Clone::clone(self.borrow());
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `gmp_classgroup::GmpClassGroup` does not implement `Borrow`, so calling `borrow` on `&gmp_classgroup::GmpClassGroup` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 376 -         let mut s = Clone::clone(self.borrow());
[INFO] [stdout] 376 +         let mut s = Clone::clone(self);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `gmp_classgroup::GmpClassGroup`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct GmpClassGroup {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `usize` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:28
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this code causes undefined behavior when executed
[INFO] [stdout]     |                            help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_sizeinbase` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn __gmpz_sizeinbase(op: &Mpz, base: c_int) -> size_t;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn __gmpz_sizeinbase(op: mpz_srcptr, base: c_int) -> size_t;
[INFO] [stdout]    |     ----------------------------------------------------------- `__gmpz_sizeinbase` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*const mpz_struct, i32) -> usize`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(&'a gmp::mpz::Mpz, i32) -> usize`
[INFO] [stdout]    = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_export` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | /     fn __gmpz_export(
[INFO] [stdout] 58 | |         rop: *mut c_void,
[INFO] [stdout] 59 | |         countp: *mut size_t,
[INFO] [stdout] 60 | |         order: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |         op: &Mpz,
[INFO] [stdout] 65 | |     ) -> *mut c_void;
[INFO] [stdout]    | |____________________^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 | /     fn __gmpz_export(rop: *mut c_void, countp: *mut size_t, order: c_int, size: size_t, 
[INFO] [stdout] 92 | |                      endian: c_int, nails: size_t, op: mpz_srcptr);
[INFO] [stdout]    | |__________________________________________________________________- `__gmpz_export` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, *const mpz_struct)`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, &'a gmp::mpz::Mpz) -> *mut c_void`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ab535109f8c90c2466129086aeb8561c587834587beba8c1566f1b45155bf87b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab535109f8c90c2466129086aeb8561c587834587beba8c1566f1b45155bf87b", kill_on_drop: false }`
[INFO] [stdout] ab535109f8c90c2466129086aeb8561c587834587beba8c1566f1b45155bf87b
[INFO] checking classgroup-0.1.0 against try#72eda894eb3548c7ba774079ce0afab42958d4ee for pr-121848-1
[INFO] extracting crate classgroup 0.1.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate classgroup 0.1.0 on toolchain 72eda894eb3548c7ba774079ce0afab42958d4ee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate classgroup 0.1.0
[INFO] finished tweaking crates.io crate classgroup 0.1.0
[INFO] tweaked toml for crates.io crate classgroup 0.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e5e1b92e4421583d816570ef8857ac2f9f593e82ea8d5bf105b72803fcec3523
[INFO] running `Command { std: "docker" "start" "-a" "e5e1b92e4421583d816570ef8857ac2f9f593e82ea8d5bf105b72803fcec3523", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e5e1b92e4421583d816570ef8857ac2f9f593e82ea8d5bf105b72803fcec3523", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5e1b92e4421583d816570ef8857ac2f9f593e82ea8d5bf105b72803fcec3523", kill_on_drop: false }`
[INFO] [stdout] e5e1b92e4421583d816570ef8857ac2f9f593e82ea8d5bf105b72803fcec3523
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+72eda894eb3548c7ba774079ce0afab42958d4ee" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fb636f8f99947f0ba5c05e9939ef5e94fbd3c5797f884822a6cf50cde7dbad93
[INFO] running `Command { std: "docker" "start" "-a" "fb636f8f99947f0ba5c05e9939ef5e94fbd3c5797f884822a6cf50cde7dbad93", kill_on_drop: false }`
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]     Checking classgroup v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]  --> src/gmp/mpz.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::From;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `From` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/gmp/mpz.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{uninitialized,size_of};
[INFO] [stdout]   |                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/gmp/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![warn(deprecated)]
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:33
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gmp/mpz.rs:487:40
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static Error> {
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static dyn Error> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/gmp/mpz.rs:478:14
[INFO] [stdout]     |
[INFO] [stdout] 478 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/gmp_classgroup/mod.rs:376:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let mut s = Clone::clone(self.borrow());
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `GmpClassGroup` does not implement `Borrow`, so calling `borrow` on `&GmpClassGroup` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 376 -         let mut s = Clone::clone(self.borrow());
[INFO] [stdout] 376 +         let mut s = Clone::clone(self);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `GmpClassGroup`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct GmpClassGroup {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `usize` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:28
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this code causes undefined behavior when executed
[INFO] [stdout]     |                            help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_sizeinbase` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn __gmpz_sizeinbase(op: &Mpz, base: c_int) -> size_t;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn __gmpz_sizeinbase(op: mpz_srcptr, base: c_int) -> size_t;
[INFO] [stdout]    |     ----------------------------------------------------------- `__gmpz_sizeinbase` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*const mpz_struct, i32) -> usize`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(&'a Mpz, i32) -> usize`
[INFO] [stdout]    = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_export` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | /     fn __gmpz_export(
[INFO] [stdout] 58 | |         rop: *mut c_void,
[INFO] [stdout] 59 | |         countp: *mut size_t,
[INFO] [stdout] 60 | |         order: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |         op: &Mpz,
[INFO] [stdout] 65 | |     ) -> *mut c_void;
[INFO] [stdout]    | |____________________^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 | /     fn __gmpz_export(rop: *mut c_void, countp: *mut size_t, order: c_int, size: size_t, 
[INFO] [stdout] 92 | |                      endian: c_int, nails: size_t, op: mpz_srcptr);
[INFO] [stdout]    | |__________________________________________________________________- `__gmpz_export` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, *const mpz_struct)`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, &'a Mpz) -> *mut c_void`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking serde_json v1.0.115
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `gmp`
[INFO] [stdout]   --> bench/bench.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use gmp::mpz::Mpz;
[INFO] [stdout]    |     ^^^ use of undeclared crate or module `gmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> bench/bench.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]  --> src/gmp/mpz.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::convert::From;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]   |
[INFO] [stdout]   = note: the item `From` is already defined here
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `std` is imported redundantly
[INFO] [stdout]  --> src/gmp/test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std;
[INFO] [stdout]   |     ^^^ the item `std` is already defined by prelude
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `From` is imported redundantly
[INFO] [stdout]   --> src/gmp/test.rs:23:24
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use std::convert::{From, Into};
[INFO] [stdout]    |                        ^^^^
[INFO] [stdout]   --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `From` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Into` is imported redundantly
[INFO] [stdout]   --> src/gmp/test.rs:23:30
[INFO] [stdout]    |
[INFO] [stdout] 23 |     use std::convert::{From, Into};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]   --> /rustc/72eda894eb3548c7ba774079ce0afab42958d4ee/library/std/src/prelude/mod.rs:115:13
[INFO] [stdout]    |
[INFO] [stdout]    = note: the item `Into` is already defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `classgroup` (bench "classgroup-bench") due to 2 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/gmp/mpz.rs:5:16
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::mem::{uninitialized,size_of};
[INFO] [stdout]   |                ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/gmp/mod.rs:1:9
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![warn(deprecated)]
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:33
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/gmp/mpz.rs:487:40
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static Error> {
[INFO] [stdout]     |                                        ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 487 |     fn cause(&self) -> Option<&'static dyn Error> {
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/gmp/mpz.rs:478:14
[INFO] [stdout]     |
[INFO] [stdout] 478 |         self.description().fmt(f)
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:132:27
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:141:27
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:189:27
[INFO] [stdout]     |
[INFO] [stdout] 189 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:458:27
[INFO] [stdout]     |
[INFO] [stdout] 458 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `mpz_struct` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp/mpz.rs:495:27
[INFO] [stdout]     |
[INFO] [stdout] 495 |             let mut mpz = uninitialized();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this code causes undefined behavior when executed
[INFO] [stdout]     |                           help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout] note: integers must be initialized (in this struct field)
[INFO] [stdout]    --> src/gmp/mpz.rs:19:5
[INFO] [stdout]     |
[INFO] [stdout] 19  |     _mp_alloc: c_int,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/gmp_classgroup/mod.rs:376:38
[INFO] [stdout]     |
[INFO] [stdout] 376 |         let mut s = Clone::clone(self.borrow());
[INFO] [stdout]     |                                      ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `gmp_classgroup::GmpClassGroup` does not implement `Borrow`, so calling `borrow` on `&gmp_classgroup::GmpClassGroup` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 376 -         let mut s = Clone::clone(self.borrow());
[INFO] [stdout] 376 +         let mut s = Clone::clone(self);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `gmp_classgroup::GmpClassGroup`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 29  + #[derive(Clone)]
[INFO] [stdout] 30  | pub struct GmpClassGroup {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `usize` does not permit being left uninitialized
[INFO] [stdout]    --> src/gmp_classgroup/ffi.rs:240:28
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut s: usize = mem::uninitialized();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this code causes undefined behavior when executed
[INFO] [stdout]     |                            help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_sizeinbase` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     fn __gmpz_sizeinbase(op: &Mpz, base: c_int) -> size_t;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn __gmpz_sizeinbase(op: mpz_srcptr, base: c_int) -> size_t;
[INFO] [stdout]    |     ----------------------------------------------------------- `__gmpz_sizeinbase` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*const mpz_struct, i32) -> usize`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(&'a gmp::mpz::Mpz, i32) -> usize`
[INFO] [stdout]    = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `__gmpz_export` redeclared with a different signature
[INFO] [stdout]   --> src/gmp_classgroup/ffi.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | /     fn __gmpz_export(
[INFO] [stdout] 58 | |         rop: *mut c_void,
[INFO] [stdout] 59 | |         countp: *mut size_t,
[INFO] [stdout] 60 | |         order: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 64 | |         op: &Mpz,
[INFO] [stdout] 65 | |     ) -> *mut c_void;
[INFO] [stdout]    | |____________________^ this signature doesn't match the previous declaration
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/gmp/mpz.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 | /     fn __gmpz_export(rop: *mut c_void, countp: *mut size_t, order: c_int, size: size_t, 
[INFO] [stdout] 92 | |                      endian: c_int, nails: size_t, op: mpz_srcptr);
[INFO] [stdout]    | |__________________________________________________________________- `__gmpz_export` previously declared here
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected `unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, *const mpz_struct)`
[INFO] [stdout]               found `for<'a> unsafe extern "C" fn(*mut c_void, *mut usize, i32, usize, i32, usize, &'a gmp::mpz::Mpz) -> *mut c_void`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fb636f8f99947f0ba5c05e9939ef5e94fbd3c5797f884822a6cf50cde7dbad93", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb636f8f99947f0ba5c05e9939ef5e94fbd3c5797f884822a6cf50cde7dbad93", kill_on_drop: false }`
[INFO] [stdout] fb636f8f99947f0ba5c05e9939ef5e94fbd3c5797f884822a6cf50cde7dbad93
