[INFO] crate reform 0.1.0 is already in cache [INFO] extracting crate reform 0.1.0 into work/ex/beta-1.38-1/sources/1.37.0/reg/reform/0.1.0 [INFO] extracting crate reform 0.1.0 into work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/reform/0.1.0 [INFO] validating manifest of reform-0.1.0 on toolchain 1.37.0 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of reform-0.1.0 on toolchain beta-2019-08-13 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing reform-0.1.0 [INFO] finished frobbing reform-0.1.0 [INFO] frobbed toml for reform-0.1.0 written to work/ex/beta-1.38-1/sources/1.37.0/reg/reform/0.1.0/Cargo.toml [INFO] started frobbing reform-0.1.0 [INFO] finished frobbing reform-0.1.0 [INFO] frobbed toml for reform-0.1.0 written to work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/reform/0.1.0/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+1.37.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+beta-2019-08-13" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] testing reform-0.1.0 against beta-2019-08-13 for beta-1.38-1 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-6/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/reform/0.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "build" "--frozen"` [INFO] [stdout] f6f9113a863c8317b74e85bb09958f9c5fcddd37870cae20611dc72aba04febf [INFO] running `"docker" "start" "-a" "f6f9113a863c8317b74e85bb09958f9c5fcddd37870cae20611dc72aba04febf"` [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling crossbeam-utils v0.5.0 [INFO] [stderr] Compiling ndarray v0.12.1 [INFO] [stderr] Compiling rug v1.5.2 [INFO] [stderr] Compiling fastdivide v0.2.0 [INFO] [stderr] Compiling num-complex v0.2.3 [INFO] [stderr] Compiling parking_lot_core v0.3.1 [INFO] [stderr] Compiling crossbeam-epoch v0.6.1 [INFO] [stderr] Compiling dirs v2.0.2 [INFO] [stderr] Compiling crossbeam-epoch v0.5.2 [INFO] [stderr] Compiling chrono v0.4.7 [INFO] [stderr] Compiling gmp-mpfr-sys v1.1.14 [INFO] [stderr] Compiling env_logger v0.5.13 [INFO] [stderr] Compiling crossbeam-deque v0.5.2 [INFO] [stderr] Compiling parking_lot v0.6.4 [INFO] [stderr] Compiling crossbeam-channel v0.2.6 [INFO] [stderr] Compiling crossbeam v0.4.1 [INFO] [stderr] Compiling reform v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poly/polynomial.rs:440:42 [INFO] [stderr] | [INFO] [stderr] 440 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poly/polynomial.rs:452:37 [INFO] [stderr] | [INFO] [stderr] 452 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:79:30 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn read(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:89:50 [INFO] [stderr] | [INFO] [stderr] 89 | fn serialize_list(args: &[Element], buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:98:34 [INFO] [stderr] | [INFO] [stderr] 98 | fn deserialize_list(buffer: &mut Read) -> Vec { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:107:48 [INFO] [stderr] | [INFO] [stderr] 107 | fn serialize_integer(i: &Integer, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:130:37 [INFO] [stderr] | [INFO] [stderr] 130 | fn deserialize_integer(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:162:42 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:187:37 [INFO] [stderr] | [INFO] [stderr] 187 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:213:42 [INFO] [stderr] | [INFO] [stderr] 213 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:232:37 [INFO] [stderr] | [INFO] [stderr] 232 | pub fn deserialize(buffer: &mut Read) -> Result, Error> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:259:42 [INFO] [stderr] | [INFO] [stderr] 259 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:300:37 [INFO] [stderr] | [INFO] [stderr] 300 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/structure.rs:277:31 [INFO] [stderr] | [INFO] [stderr] 277 | Entry::Vacant(mut a) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:331:25 [INFO] [stderr] | [INFO] [stderr] 331 | let mut i = mem::replace(input, Element::default()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:669:21 [INFO] [stderr] | [INFO] [stderr] 669 | let mut dp = local_var_info [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:858:25 [INFO] [stderr] | [INFO] [stderr] 858 | let mut dollar = mem::replace( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1328:21 [INFO] [stderr] | [INFO] [stderr] 1328 | let mut output_mutarc = Arc::new(Mutex::new(output)); [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1492:52 [INFO] [stderr] | [INFO] [stderr] 1492 | Statement::NewFunction(name, args, mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1508:29 [INFO] [stderr] | [INFO] [stderr] 1508 | let mut dp = self [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1534:33 [INFO] [stderr] | [INFO] [stderr] 1534 | let mut dollar = mem::replace( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/normalize.rs:178:29 [INFO] [stderr] | [INFO] [stderr] 178 | let mut ar = Polynomial::from(&a[0]); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/normalize.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | let mut br = Polynomial::from(&a[1]); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:154:17 [INFO] [stderr] | [INFO] [stderr] 154 | let mut ee = p.into_span().as_str().to_string(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:409:17 [INFO] [stderr] | [INFO] [stderr] 409 | let mut d = parse_dollar(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:433:17 [INFO] [stderr] | [INFO] [stderr] 433 | let mut d = parse_dollar(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:447:17 [INFO] [stderr] | [INFO] [stderr] 447 | let mut m = parse_expr(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:46:35 [INFO] [stderr] | [INFO] [stderr] 46 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:66:47 [INFO] [stderr] | [INFO] [stderr] 66 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:127:21 [INFO] [stderr] | [INFO] [stderr] 127 | let mut exp = vec![e as u32]; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:152:21 [INFO] [stderr] | [INFO] [stderr] 152 | let mut poly = MultivariatePolynomial::from_monomial(c, exp); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:212:31 [INFO] [stderr] | [INFO] [stderr] 212 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:729:31 [INFO] [stderr] | [INFO] [stderr] 729 | Entry::Vacant(mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1348:25 [INFO] [stderr] | [INFO] [stderr] 1348 | let mut vvars = vars [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1660:25 [INFO] [stderr] | [INFO] [stderr] 1660 | let mut gmc = &mut gm.coefficients[t]; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1661:25 [INFO] [stderr] | [INFO] [stderr] 1661 | let mut coeff = if *gmc < Number::SmallInt(0) { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/multivar.rs:930:17 [INFO] [stderr] | [INFO] [stderr] 930 | let mut c = self.coefficients[t].clone() * v.clone().pow(self.exponents(t)[n].as_()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/multivar.rs:973:31 [INFO] [stderr] | [INFO] [stderr] 973 | Entry::Vacant(mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: associated constant `Replaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:528:15 [INFO] [stderr] | [INFO] [stderr] 528 | const Replaced = 1; // variable substituted [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `REPLACED` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated constant `Partially_Updated` should have an upper case name [INFO] [stderr] --> src/structure.rs:529:15 [INFO] [stderr] | [INFO] [stderr] 529 | const Partially_Updated = 2; // dollar variable index was updated [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `PARTIALLY_UPDATED` [INFO] [stderr] [INFO] [stderr] warning: associated constant `NotReplaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:530:15 [INFO] [stderr] | [INFO] [stderr] 530 | const NotReplaced = 4; // variable could not be substituted [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `NOT_REPLACED` [INFO] [stderr] [INFO] [stderr] warning: associated constant `Replaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:528:15 [INFO] [stderr] | [INFO] [stderr] 528 | const Replaced = 1; // variable substituted [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `REPLACED` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | fn main() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2m 32s [INFO] running `"docker" "inspect" "f6f9113a863c8317b74e85bb09958f9c5fcddd37870cae20611dc72aba04febf"` [INFO] running `"docker" "rm" "-f" "f6f9113a863c8317b74e85bb09958f9c5fcddd37870cae20611dc72aba04febf"` [INFO] [stdout] f6f9113a863c8317b74e85bb09958f9c5fcddd37870cae20611dc72aba04febf [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-6/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/reform/0.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen" "--no-run"` [INFO] [stdout] 0c065e0812943c08b144d754ace5d599d86ac814930653336e6a207dc4bc027f [INFO] running `"docker" "start" "-a" "0c065e0812943c08b144d754ace5d599d86ac814930653336e6a207dc4bc027f"` [INFO] [stderr] Compiling reform v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/main.rs:16:29 [INFO] [stderr] | [INFO] [stderr] 16 | fn main() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn std::error::Error` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poly/polynomial.rs:440:42 [INFO] [stderr] | [INFO] [stderr] 440 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/poly/polynomial.rs:452:37 [INFO] [stderr] | [INFO] [stderr] 452 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:79:30 [INFO] [stderr] | [INFO] [stderr] 79 | pub fn read(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:89:50 [INFO] [stderr] | [INFO] [stderr] 89 | fn serialize_list(args: &[Element], buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:98:34 [INFO] [stderr] | [INFO] [stderr] 98 | fn deserialize_list(buffer: &mut Read) -> Vec { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:107:48 [INFO] [stderr] | [INFO] [stderr] 107 | fn serialize_integer(i: &Integer, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:130:37 [INFO] [stderr] | [INFO] [stderr] 130 | fn deserialize_integer(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:162:42 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:187:37 [INFO] [stderr] | [INFO] [stderr] 187 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:213:42 [INFO] [stderr] | [INFO] [stderr] 213 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:232:37 [INFO] [stderr] | [INFO] [stderr] 232 | pub fn deserialize(buffer: &mut Read) -> Result, Error> { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:259:42 [INFO] [stderr] | [INFO] [stderr] 259 | pub fn serialize(&self, buffer: &mut Write) -> usize { [INFO] [stderr] | ^^^^^ help: use `dyn`: `dyn Write` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/serialize.rs:300:37 [INFO] [stderr] | [INFO] [stderr] 300 | pub fn deserialize(buffer: &mut Read) -> Result { [INFO] [stderr] | ^^^^ help: use `dyn`: `dyn Read` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/structure.rs:277:31 [INFO] [stderr] | [INFO] [stderr] 277 | Entry::Vacant(mut a) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:331:25 [INFO] [stderr] | [INFO] [stderr] 331 | let mut i = mem::replace(input, Element::default()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:669:21 [INFO] [stderr] | [INFO] [stderr] 669 | let mut dp = local_var_info [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:858:25 [INFO] [stderr] | [INFO] [stderr] 858 | let mut dollar = mem::replace( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1328:21 [INFO] [stderr] | [INFO] [stderr] 1328 | let mut output_mutarc = Arc::new(Mutex::new(output)); [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1492:52 [INFO] [stderr] | [INFO] [stderr] 1492 | Statement::NewFunction(name, args, mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1508:29 [INFO] [stderr] | [INFO] [stderr] 1508 | let mut dp = self [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/module.rs:1534:33 [INFO] [stderr] | [INFO] [stderr] 1534 | let mut dollar = mem::replace( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/normalize.rs:178:29 [INFO] [stderr] | [INFO] [stderr] 178 | let mut ar = Polynomial::from(&a[0]); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/normalize.rs:179:29 [INFO] [stderr] | [INFO] [stderr] 179 | let mut br = Polynomial::from(&a[1]); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:154:17 [INFO] [stderr] | [INFO] [stderr] 154 | let mut ee = p.into_span().as_str().to_string(); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:409:17 [INFO] [stderr] | [INFO] [stderr] 409 | let mut d = parse_dollar(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:433:17 [INFO] [stderr] | [INFO] [stderr] 433 | let mut d = parse_dollar(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/parser/mod.rs:447:17 [INFO] [stderr] | [INFO] [stderr] 447 | let mut m = parse_expr(r.next().unwrap()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:46:35 [INFO] [stderr] | [INFO] [stderr] 46 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:66:47 [INFO] [stderr] | [INFO] [stderr] 66 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:127:21 [INFO] [stderr] | [INFO] [stderr] 127 | let mut exp = vec![e as u32]; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:152:21 [INFO] [stderr] | [INFO] [stderr] 152 | let mut poly = MultivariatePolynomial::from_monomial(c, exp); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/polynomial.rs:212:31 [INFO] [stderr] | [INFO] [stderr] 212 | Entry::Vacant(mut v) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:729:31 [INFO] [stderr] | [INFO] [stderr] 729 | Entry::Vacant(mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1348:25 [INFO] [stderr] | [INFO] [stderr] 1348 | let mut vvars = vars [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1660:25 [INFO] [stderr] | [INFO] [stderr] 1660 | let mut gmc = &mut gm.coefficients[t]; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/gcd.rs:1661:25 [INFO] [stderr] | [INFO] [stderr] 1661 | let mut coeff = if *gmc < Number::SmallInt(0) { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/multivar.rs:930:17 [INFO] [stderr] | [INFO] [stderr] 930 | let mut c = self.coefficients[t].clone() * v.clone().pow(self.exponents(t)[n].as_()); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/poly/raw/multivar.rs:973:31 [INFO] [stderr] | [INFO] [stderr] 973 | Entry::Vacant(mut e) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: associated constant `Replaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:528:15 [INFO] [stderr] | [INFO] [stderr] 528 | const Replaced = 1; // variable substituted [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `REPLACED` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated constant `Partially_Updated` should have an upper case name [INFO] [stderr] --> src/structure.rs:529:15 [INFO] [stderr] | [INFO] [stderr] 529 | const Partially_Updated = 2; // dollar variable index was updated [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `PARTIALLY_UPDATED` [INFO] [stderr] [INFO] [stderr] warning: associated constant `NotReplaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:530:15 [INFO] [stderr] | [INFO] [stderr] 530 | const NotReplaced = 4; // variable could not be substituted [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `NOT_REPLACED` [INFO] [stderr] [INFO] [stderr] warning: associated constant `Replaced` should have an upper case name [INFO] [stderr] --> src/structure.rs:528:15 [INFO] [stderr] | [INFO] [stderr] 528 | const Replaced = 1; // variable substituted [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to upper case: `REPLACED` [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 26.77s [INFO] running `"docker" "inspect" "0c065e0812943c08b144d754ace5d599d86ac814930653336e6a207dc4bc027f"` [INFO] running `"docker" "rm" "-f" "0c065e0812943c08b144d754ace5d599d86ac814930653336e6a207dc4bc027f"` [INFO] [stdout] 0c065e0812943c08b144d754ace5d599d86ac814930653336e6a207dc4bc027f [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/beta-1.38-1/worker-6/beta-2019-08-13:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/beta-1.38-1/sources/beta-2019-08-13/reg/reform/0.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+beta-2019-08-13" "test" "--frozen"` [INFO] [stdout] f51bfb2867af61ec360c5eca2c1ce8a44cecb6c6069689039228fe90e0b4bb5e [INFO] running `"docker" "start" "-a" "f51bfb2867af61ec360c5eca2c1ce8a44cecb6c6069689039228fe90e0b4bb5e"` [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running /opt/crater/target/debug/deps/reform-7f6103c34022ea8a [INFO] [stdout] [INFO] [stdout] running 36 tests [INFO] [stdout] test poly::raw::zp::test_inv ... ok [INFO] [stdout] test poly::raw::zp::test_add ... ok [INFO] [stdout] test poly::raw::zp::test_mul ... ok [INFO] [stdout] test poly::polynomial::serialize ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_underdetermined1 ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_overdetermined ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_inconsistent ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_underdetermined3 ... ok [INFO] [stdout] test serialize::serializeterm ... ok [INFO] [stdout] test poly::raw::zp::test_neg ... ok [INFO] [stdout] test tests::tests::bigint ... ok [INFO] [stdout] test tests::tests::chinese_remainder ... ok [INFO] [stdout] test poly::raw::zp::test_pow ... ok [INFO] [stdout] test poly::raw::zp::test_sub ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_underdetermined2 ... ok [INFO] [stdout] test tests::tests::content ... ok [INFO] [stdout] test tests::tests::gcd4 ... ok [INFO] [stdout] test tests::tests::gcd5 ... ok [INFO] [stdout] test tests::tests::gcd ... ok [INFO] [stdout] test tests::tests::gcd3 ... ok [INFO] [stdout] test tests::tests::divmod ... ok [INFO] [stdout] test tests::tests::gcd2 ... ok [INFO] [stdout] test tests::tests::numgcd ... ok [INFO] [stdout] test tests::tests::replace ... ok [INFO] [stdout] test tests::tests::serialize1 ... ok [INFO] [stdout] test tests::tests::gcd6 ... ok [INFO] [stdout] test tests::tests::gmpexport ... ok [INFO] [stdout] test tests::tests::gcd7 ... ok [INFO] [stdout] test tests::tests::univariate_gcd2 ... ok [INFO] [stdout] test tests::tests::simple_match ... ok [INFO] [stdout] test tests::tests::gcd9 ... ok [INFO] [stdout] test tests::tests::repeat ... ok [INFO] [stdout] test tests::tests::univariate_gcd ... ok [INFO] [stdout] test tests::tests::gcd8 ... ok [INFO] [stdout] test poly::raw::zp_solve::test_solve_bad_shape ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Running /opt/crater/target/debug/deps/reform-3abc9f66e355702b [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests reform [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/sort.rs - sort::split_merge (line 11) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "f51bfb2867af61ec360c5eca2c1ce8a44cecb6c6069689039228fe90e0b4bb5e"` [INFO] running `"docker" "rm" "-f" "f51bfb2867af61ec360c5eca2c1ce8a44cecb6c6069689039228fe90e0b4bb5e"` [INFO] [stdout] f51bfb2867af61ec360c5eca2c1ce8a44cecb6c6069689039228fe90e0b4bb5e