[INFO] fetching crate incrust 0.2.15... [INFO] testing incrust-0.2.15 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate incrust 0.2.15 into /workspace/builds/worker-18/source [INFO] validating manifest of crates.io crate incrust 0.2.15 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate incrust 0.2.15 [INFO] finished tweaking crates.io crate incrust 0.2.15 [INFO] tweaked toml for crates.io crate incrust 0.2.15 written to /workspace/builds/worker-18/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a16137e9d6e38e39b32ea3d4af337e4ae2d95ba248fca049b1a77fcfd7cd3ddc [INFO] running `Command { std: "docker" "start" "-a" "a16137e9d6e38e39b32ea3d4af337e4ae2d95ba248fca049b1a77fcfd7cd3ddc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a16137e9d6e38e39b32ea3d4af337e4ae2d95ba248fca049b1a77fcfd7cd3ddc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a16137e9d6e38e39b32ea3d4af337e4ae2d95ba248fca049b1a77fcfd7cd3ddc", kill_on_drop: false }` [INFO] [stdout] a16137e9d6e38e39b32ea3d4af337e4ae2d95ba248fca049b1a77fcfd7cd3ddc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-18/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1148d87dbfdf032f4b2d9d6c63fe324cdf390c3a7ba3ccc9933c33f7d2c2d15c [INFO] running `Command { std: "docker" "start" "-a" "1148d87dbfdf032f4b2d9d6c63fe324cdf390c3a7ba3ccc9933c33f7d2c2d15c", kill_on_drop: false }` [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Compiling marksman_escape v0.1.2 [INFO] [stderr] Compiling maplit v0.1.6 [INFO] [stderr] Compiling nom v2.2.1 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling incrust v0.2.15 (/opt/rustwide/workdir) [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | #![feature(associated_type_defaults)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | #![feature(box_syntax)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![feature(specialization)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes [INFO] [stdout] --> src/lib.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | #![feature(specialization)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(incomplete_features)]` on by default [INFO] [stdout] = note: see issue #31844 for more information [INFO] [stdout] = help: consider using `min_specialization` instead, which is more stable and complete [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/block_level.rs:75:21 [INFO] [stdout] | [INFO] [stdout] 75 | let (i, text) = try_parse!(input, [INFO] [stdout] | _____________________^ [INFO] [stdout] 76 | | chain!( v: many1!( [INFO] [stdout] 77 | | alt!( map_res!( is_not!("{"), str::from_utf8 ) | try_brace ) [INFO] [stdout] 78 | | ), || v.join("") ) [INFO] [stdout] 79 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / named!(pub filter_agg<&[u8], Vec >, [INFO] [stdout] 18 | | many0!(chain!( [INFO] [stdout] 19 | | many0!(multispace) ~ [INFO] [stdout] 20 | | f: filter, [INFO] [stdout] 21 | | || f [INFO] [stdout] 22 | | )) [INFO] [stdout] 23 | | ); [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `many0` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:40:19 [INFO] [stdout] | [INFO] [stdout] 40 | let (i, id) = try_parse!(input, [INFO] [stdout] | ___________________^ [INFO] [stdout] 41 | | chain!( [INFO] [stdout] 42 | | start: map_res!(alpha, str::from_utf8)~ [INFO] [stdout] 43 | | rest: many0!(map_res!(alt!(tag!("_") | alphanumeric), str::from_utf8)), [INFO] [stdout] ... | [INFO] [stdout] 50 | | ) [INFO] [stdout] 51 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:59:20 [INFO] [stdout] | [INFO] [stdout] 59 | let (i, lst) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 60 | | a: tuple!(value!(()), conj) ~ [INFO] [stdout] 61 | | mut b: many0!(tuple!(op_disj_bin, conj)) , [INFO] [stdout] 62 | | || { b.insert(0, a); b } [INFO] [stdout] 63 | | )); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:68:20 [INFO] [stdout] | [INFO] [stdout] 68 | let (i, lst) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 69 | | a: tuple!(value!(()), cmp) ~ [INFO] [stdout] 70 | | mut b: many0!(tuple!(op_conj_bin, cmp)) , [INFO] [stdout] 71 | | || { b.insert(0, a); b } [INFO] [stdout] 72 | | )); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:77:20 [INFO] [stdout] | [INFO] [stdout] 77 | let (i, lst) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 78 | | a: tuple!(value!(CmpOp::Eq), sum) ~ [INFO] [stdout] 79 | | mut b: many0!(tuple!(op_cmp_bin, sum)) , [INFO] [stdout] 80 | | || { b.insert(0, a); b } [INFO] [stdout] 81 | | )); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:86:20 [INFO] [stdout] | [INFO] [stdout] 86 | let (i, sum) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 87 | | a: tuple!(value!(SumOp::Add), mul) ~ [INFO] [stdout] 88 | | mut b: many0!(tuple!(op_sum_bin, mul)) , [INFO] [stdout] 89 | | || { b.insert(0, a); b } [INFO] [stdout] 90 | | )); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:95:20 [INFO] [stdout] | [INFO] [stdout] 95 | let (i, mul) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 96 | | a: tuple!(value!(MulOp::Mul), factor) ~ [INFO] [stdout] 97 | | mut b: many0!(tuple!(op_mul_bin, factor)) , [INFO] [stdout] 98 | | || { b.insert(0, a); b } [INFO] [stdout] 99 | | )); [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:112:20 [INFO] [stdout] | [INFO] [stdout] 112 | let (i, res) = try_parse!(input, chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 113 | | a: simple_factor ~ [INFO] [stdout] 114 | | b: many0!(attr_chain), [INFO] [stdout] 115 | | || b.into_iter().fold(a, |acc, rf| { [INFO] [stdout] ... | [INFO] [stdout] 122 | | }) [INFO] [stdout] 123 | | ) ); [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let (i, rf) = try_parse!(input, [INFO] [stdout] | ___________________^ [INFO] [stdout] 130 | | chain!( [INFO] [stdout] 131 | | many0!(multispace) ~ [INFO] [stdout] 132 | | rf: alt!( [INFO] [stdout] ... | [INFO] [stdout] 143 | | ) [INFO] [stdout] 144 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `try_parse` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let (i, rf) = try_parse!(input, [INFO] [stdout] | ___________________^ [INFO] [stdout] 130 | | chain!( [INFO] [stdout] 131 | | many0!(multispace) ~ [INFO] [stdout] 132 | | rf: alt!( [INFO] [stdout] ... | [INFO] [stdout] 143 | | ) [INFO] [stdout] 144 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `alt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let (i, rf) = try_parse!(input, [INFO] [stdout] | ___________________^ [INFO] [stdout] 130 | | chain!( [INFO] [stdout] 131 | | many0!(multispace) ~ [INFO] [stdout] 132 | | rf: alt!( [INFO] [stdout] ... | [INFO] [stdout] 143 | | ) [INFO] [stdout] 144 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `alt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | let (i, rf) = try_parse!(input, [INFO] [stdout] | ___________________^ [INFO] [stdout] 130 | | chain!( [INFO] [stdout] 131 | | many0!(multispace) ~ [INFO] [stdout] 132 | | rf: alt!( [INFO] [stdout] ... | [INFO] [stdout] 143 | | ) [INFO] [stdout] 144 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `alt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/expressions.rs:179:20 [INFO] [stdout] | [INFO] [stdout] 179 | let (i, lst) = try_parse!(input, opt!(chain!( [INFO] [stdout] | ____________________^ [INFO] [stdout] 180 | | a: expression ~ [INFO] [stdout] 181 | | b: many0!(tuple!(expr_sep, expression)), [INFO] [stdout] 182 | | || { [INFO] [stdout] ... | [INFO] [stdout] 187 | | } [INFO] [stdout] 188 | | ))); [INFO] [stdout] | |_______^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `opt` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/literals.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | / named!(pub char_char_agg<&[u8], String>, [INFO] [stdout] 54 | | chain!( [INFO] [stdout] 55 | | c: many0!(alt!( char_escaped | char_char )), [INFO] [stdout] 56 | | || c.join("") [INFO] [stdout] 57 | | ) [INFO] [stdout] 58 | | ); [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/literals.rs:62:1 [INFO] [stdout] | [INFO] [stdout] 62 | / named!(pub char_escaped<&[u8], &str>, chain!( [INFO] [stdout] 63 | | char!('\\') ~ [INFO] [stdout] 64 | | c: alt!( [INFO] [stdout] 65 | | char!('\\') | [INFO] [stdout] ... | [INFO] [stdout] 80 | | } [INFO] [stdout] 81 | | )); [INFO] [stdout] | |__^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/literals.rs:109:1 [INFO] [stdout] | [INFO] [stdout] 109 | / named!(pub str_char_agg<&[u8], String>, [INFO] [stdout] 110 | | chain!( [INFO] [stdout] 111 | | c: many0!(alt!( char_escaped | str_char )), [INFO] [stdout] 112 | | || c.join("") [INFO] [stdout] 113 | | ) [INFO] [stdout] 114 | | ); [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/parser/macros.rs:80:38 [INFO] [stdout] | [INFO] [stdout] 80 | take_till_slc!($input, call!($f)); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] ::: src/parser/statements.rs:36:28 [INFO] [stdout] | [INFO] [stdout] 36 | let (i, (b, txt, e)) = try_parse!(input, [INFO] [stdout] | ____________________________- [INFO] [stdout] 37 | | tuple!( [INFO] [stdout] 38 | | stmt_raw, [INFO] [stdout] 39 | | map_res!( [INFO] [stdout] ... | [INFO] [stdout] 44 | | ) [INFO] [stdout] 45 | | ); [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: macro invocations at the end of a block are treated as expressions [INFO] [stdout] = note: to ignore the value produced by the macro, add a semicolon after the invocation of `take_till_slc` [INFO] [stdout] = note: this warning originates in the macro `take_till_slc` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:54:1 [INFO] [stdout] | [INFO] [stdout] 54 | named!(pub for_block<&[u8], ParsedNode>, chain!( s: for_statement, || s.into() )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/parser/statements.rs:57:89 [INFO] [stdout] | [INFO] [stdout] 57 | fn finish(begin: ExprStatement, inner: ParsedNodes, end: SimpleStatement) -> Option<(ParsedForStatement)> { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 57 - fn finish(begin: ExprStatement, inner: ParsedNodes, end: SimpleStatement) -> Option<(ParsedForStatement)> { [INFO] [stdout] 57 + fn finish(begin: ExprStatement, inner: ParsedNodes, end: SimpleStatement) -> Option { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:128:1 [INFO] [stdout] | [INFO] [stdout] 128 | named!(pub if_block<&[u8], ParsedNode>, chain!( s: if_statement, || s.into() )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:132:5 [INFO] [stdout] | [INFO] [stdout] 132 | named!(if_<&[u8], ParsedIfBranch>, chain!( s: stmt_if ~ b: nodes, || ParsedIfBranch { begin: s, block: b } )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:133:5 [INFO] [stdout] | [INFO] [stdout] 133 | named!(elif<&[u8], ParsedIfBranch>, chain!( s: stmt_elif ~ b: nodes, || ParsedIfBranch { begin: s, block: b } )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:134:5 [INFO] [stdout] | [INFO] [stdout] 134 | named!(else_<&[u8], ParsedElseBranch>, chain!( s: stmt_else ~ b: nodes, || ParsedElseBranch { begin: s, block: b } )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:136:32 [INFO] [stdout] | [INFO] [stdout] 136 | let (i, (ifs, els, end)) = try_parse!(input, [INFO] [stdout] | ________________________________^ [INFO] [stdout] 137 | | tuple!( [INFO] [stdout] 138 | | chain!( [INFO] [stdout] 139 | | ifs: if_ ~ [INFO] [stdout] ... | [INFO] [stdout] 145 | | ) [INFO] [stdout] 146 | | ); [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `tuple_parser` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `chain`: please use [`do_parse!`](macro.do_parse.html) instead [INFO] [stdout] --> src/parser/statements.rs:160:1 [INFO] [stdout] | [INFO] [stdout] 160 | named!(pub block_block<&[u8], ParsedNode>, chain!( s: block_statement, || s.into() )); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/renderer/writer.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | pub &'w mut fmt::Write [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 4 - pub &'w mut fmt::Write [INFO] [stdout] 4 + pub &'w mut dyn fmt::Write [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | Owned(Box Type<'t> + 'r>), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 21 - Owned(Box Type<'t> + 'r>), [INFO] [stdout] 21 + Owned(Box Type<'t> + 'r>), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:22:14 [INFO] [stdout] | [INFO] [stdout] 22 | Ref(&'r (for <'t> Type<'t> + 'r)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 - Ref(&'r (for <'t> Type<'t> + 'r)), [INFO] [stdout] 22 + Ref(&'r (dyn for <'t> Type<'t> + 'r)), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/loader/group.rs:3:32 [INFO] [stdout] | [INFO] [stdout] 3 | pub type GroupLoader = Vec>; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 3 - pub type GroupLoader = Vec>; [INFO] [stdout] 3 + pub type GroupLoader = Vec>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/incrust.rs:11:34 [INFO] [stdout] | [INFO] [stdout] 11 | filters: HashMap>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 11 - filters: HashMap>, [INFO] [stdout] 11 + filters: HashMap>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/loader/namespace.rs:6:17 [INFO] [stdout] | [INFO] [stdout] 6 | loader: Box, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 6 - loader: Box, [INFO] [stdout] 6 + loader: Box, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | impl <'r> AsRef Type<'t> + 'r> for Arg<'r> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - impl <'r> AsRef Type<'t> + 'r> for Arg<'r> { [INFO] [stdout] 66 + impl <'r> AsRef Type<'t> + 'r> for Arg<'r> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:85:21 [INFO] [stdout] | [INFO] [stdout] 85 | impl <'r> From<&'r (for <'t> Type<'t> + 'r)> for Arg<'r> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 85 - impl <'r> From<&'r (for <'t> Type<'t> + 'r)> for Arg<'r> { [INFO] [stdout] 85 + impl <'r> From<&'r (dyn for <'t> Type<'t> + 'r)> for Arg<'r> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:55:19 [INFO] [stdout] | [INFO] [stdout] 55 | type Target = for <'t> Type<'t> + 'r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 55 - type Target = for <'t> Type<'t> + 'r; [INFO] [stdout] 55 + type Target = dyn for <'t> Type<'t> + 'r; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:67:27 [INFO] [stdout] | [INFO] [stdout] 67 | fn as_ref(&self) -> &(for <'t> Type<'t> + 'r) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 - fn as_ref(&self) -> &(for <'t> Type<'t> + 'r) { [INFO] [stdout] 67 + fn as_ref(&self) -> &(dyn for <'t> Type<'t> + 'r) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/args.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | fn from(v: &'r (for <'t> Type<'t> + 'r)) -> Arg<'r> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 86 - fn from(v: &'r (for <'t> Type<'t> + 'r)) -> Arg<'r> { [INFO] [stdout] 86 + fn from(v: &'r (dyn for <'t> Type<'t> + 'r)) -> Arg<'r> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/loader/group.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | impl Loader for Vec> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 5 - impl Loader for Vec> { [INFO] [stdout] 5 + impl Loader for Vec> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/loader/namespace.rs:10:45 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn new(namespace: &str, loader: Box) -> Box { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 10 - pub fn new(namespace: &str, loader: Box) -> Box { [INFO] [stdout] 10 + pub fn new(namespace: &str, loader: Box) -> Box { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:32:37 [INFO] [stdout] | [INFO] [stdout] 32 | fn try_as_any(&self) -> Option<&Any>; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 32 - fn try_as_any(&self) -> Option<&Any>; [INFO] [stdout] 32 + fn try_as_any(&self) -> Option<&dyn Any>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:57:43 [INFO] [stdout] | [INFO] [stdout] 57 | fn try_as_invocable(&self) -> Option<&IInvocable>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - fn try_as_invocable(&self) -> Option<&IInvocable>; [INFO] [stdout] 57 + fn try_as_invocable(&self) -> Option<&dyn IInvocable>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:62:42 [INFO] [stdout] | [INFO] [stdout] 62 | fn try_as_iterable(&self) -> Option<&IIterable>; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 62 - fn try_as_iterable(&self) -> Option<&IIterable>; [INFO] [stdout] 62 + fn try_as_iterable(&self) -> Option<&dyn IIterable>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:67:44 [INFO] [stdout] | [INFO] [stdout] 67 | fn try_as_composable(&self) -> Option<&IComposable>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 67 - fn try_as_composable(&self) -> Option<&IComposable>; [INFO] [stdout] 67 + fn try_as_composable(&self) -> Option<&dyn IComposable>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:72:43 [INFO] [stdout] | [INFO] [stdout] 72 | fn try_as_indexable(&self) -> Option<&IIndexable>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 72 - fn try_as_indexable(&self) -> Option<&IIndexable>; [INFO] [stdout] 72 + fn try_as_indexable(&self) -> Option<&dyn IIndexable>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:77:42 [INFO] [stdout] | [INFO] [stdout] 77 | fn try_as_mappable(&self) -> Option<&IMappable>; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 77 - fn try_as_mappable(&self) -> Option<&IMappable>; [INFO] [stdout] 77 + fn try_as_mappable(&self) -> Option<&dyn IMappable>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:82:44 [INFO] [stdout] | [INFO] [stdout] 82 | fn try_as_partial_eq(&self) -> Option<&IPartialEq>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 82 - fn try_as_partial_eq(&self) -> Option<&IPartialEq>; [INFO] [stdout] 82 + fn try_as_partial_eq(&self) -> Option<&dyn IPartialEq>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:87:45 [INFO] [stdout] | [INFO] [stdout] 87 | fn try_as_partial_ord(&self) -> Option<&IPartialOrd>; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 87 - fn try_as_partial_ord(&self) -> Option<&IPartialOrd>; [INFO] [stdout] 87 + fn try_as_partial_ord(&self) -> Option<&dyn IPartialOrd>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/abc.rs:106:45 [INFO] [stdout] | [INFO] [stdout] 106 | fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 106 - fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i>; [INFO] [stdout] 106 + fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:83:50 [INFO] [stdout] | [INFO] [stdout] 83 | default fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 83 - default fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] 83 + default fn try_as_iterable(&self) -> Option<&dyn IIterable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:93:50 [INFO] [stdout] | [INFO] [stdout] 93 | default fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 93 - default fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] 93 + default fn try_as_iterable(&self) -> Option<&dyn IIterable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:103:51 [INFO] [stdout] | [INFO] [stdout] 103 | default fn try_as_indexable(&self) -> Option<&IIndexable> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 103 - default fn try_as_indexable(&self) -> Option<&IIndexable> { [INFO] [stdout] 103 + default fn try_as_indexable(&self) -> Option<&dyn IIndexable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:113:51 [INFO] [stdout] | [INFO] [stdout] 113 | default fn try_as_indexable(&self) -> Option<&IIndexable> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 113 - default fn try_as_indexable(&self) -> Option<&IIndexable> { [INFO] [stdout] 113 + default fn try_as_indexable(&self) -> Option<&dyn IIndexable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:123:50 [INFO] [stdout] | [INFO] [stdout] 123 | default fn try_as_mappable(&self) -> Option<&IMappable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 123 - default fn try_as_mappable(&self) -> Option<&IMappable> { [INFO] [stdout] 123 + default fn try_as_mappable(&self) -> Option<&dyn IMappable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:133:50 [INFO] [stdout] | [INFO] [stdout] 133 | default fn try_as_mappable(&self) -> Option<&IMappable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 133 - default fn try_as_mappable(&self) -> Option<&IMappable> { [INFO] [stdout] 133 + default fn try_as_mappable(&self) -> Option<&dyn IMappable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:143:52 [INFO] [stdout] | [INFO] [stdout] 143 | default fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 143 - default fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] 143 + default fn try_as_composable(&self) -> Option<&dyn IComposable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:153:52 [INFO] [stdout] | [INFO] [stdout] 153 | default fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 153 - default fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] 153 + default fn try_as_composable(&self) -> Option<&dyn IComposable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:163:51 [INFO] [stdout] | [INFO] [stdout] 163 | default fn try_as_invocable(&self) -> Option<&IInvocable> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 163 - default fn try_as_invocable(&self) -> Option<&IInvocable> { [INFO] [stdout] 163 + default fn try_as_invocable(&self) -> Option<&dyn IInvocable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:173:51 [INFO] [stdout] | [INFO] [stdout] 173 | default fn try_as_invocable(&self) -> Option<&IInvocable> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 173 - default fn try_as_invocable(&self) -> Option<&IInvocable> { [INFO] [stdout] 173 + default fn try_as_invocable(&self) -> Option<&dyn IInvocable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:184:52 [INFO] [stdout] | [INFO] [stdout] 184 | default fn try_as_partial_eq(&self) -> Option<&IPartialEq> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 184 - default fn try_as_partial_eq(&self) -> Option<&IPartialEq> { [INFO] [stdout] 184 + default fn try_as_partial_eq(&self) -> Option<&dyn IPartialEq> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:194:52 [INFO] [stdout] | [INFO] [stdout] 194 | default fn try_as_partial_eq(&self) -> Option<&IPartialEq> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 194 - default fn try_as_partial_eq(&self) -> Option<&IPartialEq> { [INFO] [stdout] 194 + default fn try_as_partial_eq(&self) -> Option<&dyn IPartialEq> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:204:53 [INFO] [stdout] | [INFO] [stdout] 204 | default fn try_as_partial_ord(&self) -> Option<&IPartialOrd> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 204 - default fn try_as_partial_ord(&self) -> Option<&IPartialOrd> { [INFO] [stdout] 204 + default fn try_as_partial_ord(&self) -> Option<&dyn IPartialOrd> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/defaults.rs:214:53 [INFO] [stdout] | [INFO] [stdout] 214 | default fn try_as_partial_ord(&self) -> Option<&IPartialOrd> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 - default fn try_as_partial_ord(&self) -> Option<&IPartialOrd> { [INFO] [stdout] 214 + default fn try_as_partial_ord(&self) -> Option<&dyn IPartialOrd> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/string.rs:78:44 [INFO] [stdout] | [INFO] [stdout] 78 | fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 78 - fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] 78 + fn try_as_composable(&self) -> Option<&dyn IComposable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:33:42 [INFO] [stdout] | [INFO] [stdout] 33 | fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 33 - fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] 33 + fn try_as_iterable(&self) -> Option<&dyn IIterable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:39:44 [INFO] [stdout] | [INFO] [stdout] 39 | fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 - fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] 39 + fn try_as_composable(&self) -> Option<&dyn IComposable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:50:45 [INFO] [stdout] | [INFO] [stdout] 50 | fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 50 - fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] 50 + fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:143:42 [INFO] [stdout] | [INFO] [stdout] 143 | fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 143 - fn try_as_iterable(&self) -> Option<&IIterable> { [INFO] [stdout] 143 + fn try_as_iterable(&self) -> Option<&dyn IIterable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:149:44 [INFO] [stdout] | [INFO] [stdout] 149 | fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 149 - fn try_as_composable(&self) -> Option<&IComposable> { [INFO] [stdout] 149 + fn try_as_composable(&self) -> Option<&dyn IComposable> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/list.rs:160:45 [INFO] [stdout] | [INFO] [stdout] 160 | fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 160 - fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] 160 + fn ivalues<'s: 'i, 'i>(&'s self) -> Box + 'i> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0520]: `is_string` specializes an item from a parent `impl`, but that item is not marked `default` [INFO] [stdout] --> src/types/string.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | / fn is_string(&self) -> bool { [INFO] [stdout] 25 | | true [INFO] [stdout] 26 | | } [INFO] [stdout] | |_____^ cannot specialize default item `is_string` [INFO] [stdout] | [INFO] [stdout] ::: src/types/defaults.rs:44:1 [INFO] [stdout] | [INFO] [stdout] 44 | / impl <'r, T> AsString for T where T: for <'t> Type<'t> + 'r + Display { [INFO] [stdout] 45 | | default fn try_as_string(&self) -> Option> { [INFO] [stdout] 46 | | Some(Cow::Owned(ToString::to_string(self))) [INFO] [stdout] 47 | | } [INFO] [stdout] 48 | | } [INFO] [stdout] | |_- parent `impl` is here [INFO] [stdout] | [INFO] [stdout] = note: to specialize, `is_string` in the parent `impl` must be marked `default` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/container/incrust.rs:21:46 [INFO] [stdout] | [INFO] [stdout] 21 | let mut filters: HashMap> = HashMap::new(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 21 - let mut filters: HashMap> = HashMap::new(); [INFO] [stdout] 21 + let mut filters: HashMap> = HashMap::new(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_left`: superseded by `trim_start` [INFO] [stdout] --> src/container/template.rs:66:46 [INFO] [stdout] | [INFO] [stdout] 66 | (true, false) => txt.trim_left().into(), [INFO] [stdout] | ^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `core::str::::trim_right`: superseded by `trim_end` [INFO] [stdout] --> src/container/template.rs:67:46 [INFO] [stdout] | [INFO] [stdout] 67 | (false, true) => txt.trim_right().into(), [INFO] [stdout] | ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/bool.rs:44:23 [INFO] [stdout] | [INFO] [stdout] 44 | (self as &PartialOrd).partial_cmp(&other.to_bool()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 44 - (self as &PartialOrd).partial_cmp(&other.to_bool()) [INFO] [stdout] 44 + (self as &dyn PartialOrd).partial_cmp(&other.to_bool()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/real.rs:49:56 [INFO] [stdout] | [INFO] [stdout] 49 | other.try_as_real().and_then(|s| (self as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 - other.try_as_real().and_then(|s| (self as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] 49 + other.try_as_real().and_then(|s| (self as &dyn PartialOrd).partial_cmp(&s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/int.rs:46:55 [INFO] [stdout] | [INFO] [stdout] 46 | other.try_as_int().and_then(|s| (self as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 46 - other.try_as_int().and_then(|s| (self as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] 46 + other.try_as_int().and_then(|s| (self as &dyn PartialOrd).partial_cmp(&s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/types/int.rs:50:60 [INFO] [stdout] | [INFO] [stdout] 50 | other.try_as_real().and_then(|s| (&val as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 50 - other.try_as_real().and_then(|s| (&val as &PartialOrd).partial_cmp(&s)) [INFO] [stdout] 50 + other.try_as_real().and_then(|s| (&val as &dyn PartialOrd).partial_cmp(&s)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors; 77 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0520, E0554. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0520`. [INFO] [stdout] [INFO] [stderr] error: could not compile `incrust` due to 5 previous errors; 77 warnings emitted [INFO] running `Command { std: "docker" "inspect" "1148d87dbfdf032f4b2d9d6c63fe324cdf390c3a7ba3ccc9933c33f7d2c2d15c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1148d87dbfdf032f4b2d9d6c63fe324cdf390c3a7ba3ccc9933c33f7d2c2d15c", kill_on_drop: false }` [INFO] [stdout] 1148d87dbfdf032f4b2d9d6c63fe324cdf390c3a7ba3ccc9933c33f7d2c2d15c