[INFO] fetching crate honestintervals 0.2.0...
[INFO] testing honestintervals-0.2.0 against 1.76.0 for beta-1.77-1
[INFO] extracting crate honestintervals 0.2.0 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate honestintervals 0.2.0 on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate honestintervals 0.2.0
[INFO] finished tweaking crates.io crate honestintervals 0.2.0
[INFO] tweaked toml for crates.io crate honestintervals 0.2.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "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" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7b1b1b609b7f71b82f8f853e72332fc0bd2b3ae952e5360e694f16c3b39d0c0a
[INFO] running `Command { std: "docker" "start" "-a" "7b1b1b609b7f71b82f8f853e72332fc0bd2b3ae952e5360e694f16c3b39d0c0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7b1b1b609b7f71b82f8f853e72332fc0bd2b3ae952e5360e694f16c3b39d0c0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b1b1b609b7f71b82f8f853e72332fc0bd2b3ae952e5360e694f16c3b39d0c0a", kill_on_drop: false }`
[INFO] [stdout] 7b1b1b609b7f71b82f8f853e72332fc0bd2b3ae952e5360e694f16c3b39d0c0a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 33c0e7d4f3bfa1af3ccad281deb8939539c1a04c6d700ca39d6d20b02d221906
[INFO] running `Command { std: "docker" "start" "-a" "33c0e7d4f3bfa1af3ccad281deb8939539c1a04c6d700ca39d6d20b02d221906", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling honestintervals v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.67s
[INFO] running `Command { std: "docker" "inspect" "33c0e7d4f3bfa1af3ccad281deb8939539c1a04c6d700ca39d6d20b02d221906", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33c0e7d4f3bfa1af3ccad281deb8939539c1a04c6d700ca39d6d20b02d221906", kill_on_drop: false }`
[INFO] [stdout] 33c0e7d4f3bfa1af3ccad281deb8939539c1a04c6d700ca39d6d20b02d221906
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db20dd7f8d3f7b0453773baa7a6beeb390639d66f4ba4216ddbc24b8ea89aa7d
[INFO] running `Command { std: "docker" "start" "-a" "db20dd7f8d3f7b0453773baa7a6beeb390639d66f4ba4216ddbc24b8ea89aa7d", kill_on_drop: false }`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling honestintervals v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `iv`
[INFO] [stdout]   --> src/intervalset/tests.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! iv {
[INFO] [stdout]    |              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/interval/tests.rs:562:33
[INFO] [stdout]     |
[INFO] [stdout] 562 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/interval/tests_f64.rs:403:33
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/intervalset/tests.rs:565:33
[INFO] [stdout]     |
[INFO] [stdout] 565 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: LC_ALL="C" PATH="/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcatG6aa/symbols.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.00.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.01.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.02.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.03.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.04.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.05.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.06.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.07.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.08.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.09.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.honestintervals.f6d26a5b8a1a857e-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56.2fcc0hwd6c21gc5n.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bdynamic" "-lmpfr" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-5d722ce3e5d0595e.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-76f5006e4e062e57.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-a18ed5fdf4a57b72.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-a14b8d31733ef9e9.rlib" "/opt/rustwide/target/debug/deps/liblibc-50cf0445600f9cae.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-66d8041607d2929b.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-a57e2388c0aea9b1.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-dcd9be90ae2cb505.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-516789932d161b4e.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-1ff34b0cf871cb60.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-0c110dd0650d6cb7.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-a6e97aae2681ad8f.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-b93dac2525ec4d1e.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-ce1d65fb391ae98b.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-8933a2fb54d88492.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-306712ebb1ee1a3f.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-349c574f342b0d30.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-65c422a3ad95273d.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-7e6330a6c0cb9441.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-39c59240bfdfab27.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-e9d126c51bb8b2bb.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-5af394d9b1f07bdc.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-693a8f23970c5917.rlib" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-13fc9d1ed9c7a2bc.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/1.76.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/honestintervals-e52a8f10bd78eb56" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: /usr/bin/ld: cannot find -lmpfr: No such file or directory
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `honestintervals` (lib test) due to 2 previous errors; 20 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "db20dd7f8d3f7b0453773baa7a6beeb390639d66f4ba4216ddbc24b8ea89aa7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db20dd7f8d3f7b0453773baa7a6beeb390639d66f4ba4216ddbc24b8ea89aa7d", kill_on_drop: false }`
[INFO] [stdout] db20dd7f8d3f7b0453773baa7a6beeb390639d66f4ba4216ddbc24b8ea89aa7d
[INFO] testing honestintervals-0.2.0 against beta-2024-02-10 for beta-1.77-1
[INFO] extracting crate honestintervals 0.2.0 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate honestintervals 0.2.0 on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate honestintervals 0.2.0
[INFO] finished tweaking crates.io crate honestintervals 0.2.0
[INFO] tweaked toml for crates.io crate honestintervals 0.2.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "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" "+beta-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ed813af4a082bb9c9fc4d8808fb1653f338dd5fbb80004bc29adb8328e764a0b
[INFO] running `Command { std: "docker" "start" "-a" "ed813af4a082bb9c9fc4d8808fb1653f338dd5fbb80004bc29adb8328e764a0b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed813af4a082bb9c9fc4d8808fb1653f338dd5fbb80004bc29adb8328e764a0b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed813af4a082bb9c9fc4d8808fb1653f338dd5fbb80004bc29adb8328e764a0b", kill_on_drop: false }`
[INFO] [stdout] ed813af4a082bb9c9fc4d8808fb1653f338dd5fbb80004bc29adb8328e764a0b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4e503f6be95a509fe32d773a1165446345c26a9fa5b7d04c766207ac5325718b
[INFO] running `Command { std: "docker" "start" "-a" "4e503f6be95a509fe32d773a1165446345c26a9fa5b7d04c766207ac5325718b", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling honestintervals v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.64s
[INFO] running `Command { std: "docker" "inspect" "4e503f6be95a509fe32d773a1165446345c26a9fa5b7d04c766207ac5325718b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e503f6be95a509fe32d773a1165446345c26a9fa5b7d04c766207ac5325718b", kill_on_drop: false }`
[INFO] [stdout] 4e503f6be95a509fe32d773a1165446345c26a9fa5b7d04c766207ac5325718b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e26e952ed0bb9ae199b6c96846a98ae609fe8385cdaa41ae0d7b9df7f3a22f5a
[INFO] running `Command { std: "docker" "start" "-a" "e26e952ed0bb9ae199b6c96846a98ae609fe8385cdaa41ae0d7b9df7f3a22f5a", kill_on_drop: false }`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling honestintervals v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_lo(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn from_hi(T, precision: usize) -> Self;
[INFO] [stdout]    |                ^ help: try naming the parameter or explicitly ignoring it: `_: T`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:30:29
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn from_str_lo(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/fp.rs:32:29
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn from_str_hi(s: &str, usize) -> Result<Self, Self::Err> { Self::from_str(s) }
[INFO] [stdout]    |                             ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/mpfr/capi.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 |   /// External calls to MPFR library. See http://www.mpfr.org/mpfr-current/mpfr.html for details.
[INFO] [stdout]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 | / extern "C" {
[INFO] [stdout] 46 | |     // Initialization functions.
[INFO] [stdout] 47 | |     pub fn mpfr_init2(x: MpfrPtr, prec: MpfrPrec);
[INFO] [stdout] 48 | |     pub fn mpfr_clear(x: MpfrPtr);
[INFO] [stdout] ...  |
[INFO] [stdout] 90 | |     pub fn mpfr_max(rop: MpfrPtr, op1: MpfrConstPtr, op2: MpfrConstPtr, rnd: MpfrRnd) -> c_int;
[INFO] [stdout] 91 | | }
[INFO] [stdout]    | |_- rustdoc does not generate documentation for extern blocks
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `iv`
[INFO] [stdout]   --> src/intervalset/tests.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | macro_rules! iv {
[INFO] [stdout]    |              ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]  --> src/mpfr/impl_basic.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::mem::uninitialized;
[INFO] [stdout]   |               ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = uninitialized();
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:23
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_start_matches('<').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/interval/impl_basic.rs:128:46
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let s = s.trim_left_matches('<').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:23
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_end_matches('>').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/interval/impl_basic.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 130 |             let s = s.trim_right_matches('>').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left_matches`: superseded by `trim_start_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:23
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_start_matches('{').trim_left();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_left`: superseded by `trim_start`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:116:46
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_left();
[INFO] [stdout]     |                                              ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let s = s.trim_left_matches('{').trim_start();
[INFO] [stdout]     |                                              ~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right_matches`: superseded by `trim_end_matches`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:23
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_end_matches('}').trim_right();
[INFO] [stdout]     |                       ~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/intervalset/impl_basic.rs:118:47
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_right();
[INFO] [stdout]     |                                               ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 118 |             let s = s.trim_right_matches('}').trim_end();
[INFO] [stdout]     |                                               ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `MpfrStruct` does not permit being left uninitialized
[INFO] [stdout]   --> src/mpfr/impl_basic.rs:16:24
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let mut mpfr = 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/mpfr/capi.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub _mpfr_prec: MpfrPrec,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/interval/tests.rs:562:33
[INFO] [stdout]     |
[INFO] [stdout] 562 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/interval/tests_f64.rs:403:33
[INFO] [stdout]     |
[INFO] [stdout] 403 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]    --> src/intervalset/tests.rs:565:33
[INFO] [stdout]     |
[INFO] [stdout] 565 |         let cz = String::from(cz.clone());
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: LC_ALL="C" PATH="/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/opt/rustwide/cargo-home/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcylkjzE/symbols.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.00.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.01.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.02.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.03.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.04.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.05.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.06.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.07.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.08.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.09.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.10.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.11.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.12.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.13.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.14.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.honestintervals.53ad2935713213f4-cgu.15.rcgu.o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8.4a65dq6mpov8ghlm.rcgu.o" "-Wl,--as-needed" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bdynamic" "-lmpfr" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-7b2522a9e679b88d.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-f94d980056e8955a.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-dfc6ee63d8caa20c.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-113d7bdd8cf56a35.rlib" "/opt/rustwide/target/debug/deps/liblibc-db6d1022cbe7c1eb.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-c3d3f3356130ff3b.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-95df42f89c1d4925.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-0d2835f8aa540844.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-370839a40e011065.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-9649e5e19a7f7d26.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-947cba7c5cf68c1c.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-ced012bebfb4965d.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-ca1b3bc71d252cc2.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-fc6e78e39549a6fa.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-339fe9c79c84af4f.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-1568bb4b0be20e00.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-fe9837fa83c5d69d.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-4c6008bb65e308f5.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-c9bf4c045d493bdb.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-e47cddc003bce885.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-ddda47710dcba33d.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-e46bc3da6d7c462f.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-8d1ac131d3cb2645.rlib" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-b4e1725cffd81412.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/rustup-home/toolchains/beta-2024-02-10-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/honestintervals-6d0fed0f169a3ae8" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: /usr/bin/ld: cannot find -lmpfr: No such file or directory
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `honestintervals` (lib test) due to 2 previous errors; 20 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "e26e952ed0bb9ae199b6c96846a98ae609fe8385cdaa41ae0d7b9df7f3a22f5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e26e952ed0bb9ae199b6c96846a98ae609fe8385cdaa41ae0d7b9df7f3a22f5a", kill_on_drop: false }`
[INFO] [stdout] e26e952ed0bb9ae199b6c96846a98ae609fe8385cdaa41ae0d7b9df7f3a22f5a
