[INFO] cloning repository https://github.com/emj-lang/clex
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/emj-lang/clex" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femj-lang%2Fclex", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femj-lang%2Fclex'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 82efe9636b722d6eeb4558ca67feefaf44faad85
[INFO] testing emj-lang/clex against 1.47.0 for beta-1.48-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femj-lang%2Fclex" "/workspace/builds/worker-14/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-14/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/emj-lang/clex on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/emj-lang/clex
[INFO] finished tweaking git repo https://github.com/emj-lang/clex
[INFO] tweaked toml for git repo https://github.com/emj-lang/clex written to /workspace/builds/worker-14/source/Cargo.toml
[INFO] crate git repo https://github.com/emj-lang/clex already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 28d81d14aa40284152b0dd20459bb6871a03c0cdb98753680b299c7ec86543d7
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "28d81d14aa40284152b0dd20459bb6871a03c0cdb98753680b299c7ec86543d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28d81d14aa40284152b0dd20459bb6871a03c0cdb98753680b299c7ec86543d7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28d81d14aa40284152b0dd20459bb6871a03c0cdb98753680b299c7ec86543d7", kill_on_drop: false }`
[INFO] [stdout] 28d81d14aa40284152b0dd20459bb6871a03c0cdb98753680b299c7ec86543d7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0ea0172bf1a4f6395bbf9dcab598fa724b6bed5af9672ab055626b15489f3cc8
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "0ea0172bf1a4f6395bbf9dcab598fa724b6bed5af9672ab055626b15489f3cc8", kill_on_drop: false }`
[INFO] [stderr]    Compiling clex v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/basic.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |             try!(write!(f, "%"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         try!(write!(f, "("));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             try!(write!(f, "<"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(write!(f, "["));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:92:46
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 &SetElement::PE(ref pe) => { try!(write!(f, "{}", pe)); },
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:94:21
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     try!(write!(f, "{}", lower));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:95:21
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     try!(write!(f, ":"));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |                     try!(write!(f, "{}", upper));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/set.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(write!(f, "]"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         try!(write!(f, "{}", self.quantified));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:87:39
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Quantification::Greedy => try!(write!(f, "+")),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:88:42
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Quantification::NonGreedy => try!(write!(f, "-")),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:89:41
[INFO] [stdout]    |
[INFO] [stdout] 89 |             Quantification::Optional => try!(write!(f, "?")),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/root.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:105:22
[INFO] [stdout]     |
[INFO] [stdout] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:112:35
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:25:45
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/set.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     next: Box<PatternElement>,
[INFO] [stdout]   |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     PE(Box<PatternElement>),
[INFO] [stdout]    |            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:48
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:20:26
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(next: Box<PatternElement>, elements: Vec<SetElement>, negated: bool) -> Set {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:113:20
[INFO] [stdout]     |
[INFO] [stdout] 113 |     state: &'a mut MatchState,
[INFO] [stdout]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:119:27
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new(state: &'a mut MatchState) -> MatchStateProxy<'a> {
[INFO] [stdout]     |                           ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:183:54
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]     |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     quantified: Box<PatternElement>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     next: Box<PatternElement>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:64
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:91
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/root.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:13:34
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(children: Vec<Box<PatternElement>>) -> Root {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:17:45
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/slice.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 |     slice: &'a [Box<PatternElement>],
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(slice: &'a [Box<PatternElement>], capture: bool, startpos: usize, backmatch: bool) -> Slice<'a> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn simple(slice: &'a [Box<PatternElement>]) -> Slice<'a> {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 |     userdata: HashMap<String, Box<Any>>,
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:74:54
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>>;
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |     element: &'a PatternElement,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:42:29
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn new(element: &'a PatternElement, next: Option<&'b Next>) -> Next<'a, 'b> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:46:31
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn element(&self) -> &PatternElement {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:54:39
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                       ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:60:35
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:64:40
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn compare_next(&self, state: &mut MatchState, Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:73:44
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn parse(pattern: &[u8]) -> Result<Box<PatternElement>, String> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:38
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:58
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 59 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1.11s
[INFO] running `Command { std: "docker" "inspect" "0ea0172bf1a4f6395bbf9dcab598fa724b6bed5af9672ab055626b15489f3cc8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ea0172bf1a4f6395bbf9dcab598fa724b6bed5af9672ab055626b15489f3cc8", kill_on_drop: false }`
[INFO] [stdout] 0ea0172bf1a4f6395bbf9dcab598fa724b6bed5af9672ab055626b15489f3cc8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 52327a820ff758160f35e7de957ecf717c95d34047da9975a8a78d9b72e10171
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "52327a820ff758160f35e7de957ecf717c95d34047da9975a8a78d9b72e10171", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/basic.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |             try!(write!(f, "%"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clex v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         try!(write!(f, "("));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             try!(write!(f, "<"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(write!(f, "["));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:92:46
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 &SetElement::PE(ref pe) => { try!(write!(f, "{}", pe)); },
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:94:21
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     try!(write!(f, "{}", lower));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:95:21
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     try!(write!(f, ":"));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |                     try!(write!(f, "{}", upper));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/set.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(write!(f, "]"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         try!(write!(f, "{}", self.quantified));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:87:39
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Quantification::Greedy => try!(write!(f, "+")),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:88:42
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Quantification::NonGreedy => try!(write!(f, "-")),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:89:41
[INFO] [stdout]    |
[INFO] [stdout] 89 |             Quantification::Optional => try!(write!(f, "?")),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/root.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:105:22
[INFO] [stdout]     |
[INFO] [stdout] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:112:35
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:25:45
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/set.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     next: Box<PatternElement>,
[INFO] [stdout]   |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     PE(Box<PatternElement>),
[INFO] [stdout]    |            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:48
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:20:26
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(next: Box<PatternElement>, elements: Vec<SetElement>, negated: bool) -> Set {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:113:20
[INFO] [stdout]     |
[INFO] [stdout] 113 |     state: &'a mut MatchState,
[INFO] [stdout]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:119:27
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new(state: &'a mut MatchState) -> MatchStateProxy<'a> {
[INFO] [stdout]     |                           ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:183:54
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]     |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     quantified: Box<PatternElement>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     next: Box<PatternElement>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:64
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:91
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/root.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:13:34
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(children: Vec<Box<PatternElement>>) -> Root {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:17:45
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/slice.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 |     slice: &'a [Box<PatternElement>],
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(slice: &'a [Box<PatternElement>], capture: bool, startpos: usize, backmatch: bool) -> Slice<'a> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn simple(slice: &'a [Box<PatternElement>]) -> Slice<'a> {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 |     userdata: HashMap<String, Box<Any>>,
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:74:54
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>>;
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |     element: &'a PatternElement,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:42:29
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn new(element: &'a PatternElement, next: Option<&'b Next>) -> Next<'a, 'b> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:46:31
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn element(&self) -> &PatternElement {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:54:39
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                       ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:60:35
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:64:40
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn compare_next(&self, state: &mut MatchState, Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:73:44
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn parse(pattern: &[u8]) -> Result<Box<PatternElement>, String> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:38
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:58
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 59 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/basic.rs:102:13
[INFO] [stdout]     |
[INFO] [stdout] 102 |             try!(write!(f, "%"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         try!(write!(f, "("));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |             try!(write!(f, "<"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/group.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(write!(f, "["));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:88:13
[INFO] [stdout]    |
[INFO] [stdout] 88 |             try!(write!(f, "*"));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:92:46
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 &SetElement::PE(ref pe) => { try!(write!(f, "{}", pe)); },
[INFO] [stdout]    |                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:94:21
[INFO] [stdout]    |
[INFO] [stdout] 94 |                     try!(write!(f, "{}", lower));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:95:21
[INFO] [stdout]    |
[INFO] [stdout] 95 |                     try!(write!(f, ":"));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/set.rs:96:21
[INFO] [stdout]    |
[INFO] [stdout] 96 |                     try!(write!(f, "{}", upper));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/matchers/set.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(write!(f, "]"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         try!(write!(f, "{}", self.quantified));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:87:39
[INFO] [stdout]    |
[INFO] [stdout] 87 |             Quantification::Greedy => try!(write!(f, "+")),
[INFO] [stdout]    |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:88:42
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Quantification::NonGreedy => try!(write!(f, "-")),
[INFO] [stdout]    |                                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/quantifiers.rs:89:41
[INFO] [stdout]    |
[INFO] [stdout] 89 |             Quantification::Optional => try!(write!(f, "?")),
[INFO] [stdout]    |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/matchers/root.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             try!(write!(f, "{}", c));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:38:35
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:58:35
[INFO] [stdout]    |
[INFO] [stdout] 58 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/basic.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:105:22
[INFO] [stdout]     |
[INFO] [stdout] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/basic.rs:112:35
[INFO] [stdout]     |
[INFO] [stdout] 112 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:25:45
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/group.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/set.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     next: Box<PatternElement>,
[INFO] [stdout]   |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 |     PE(Box<PatternElement>),
[INFO] [stdout]    |            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:16:48
[INFO] [stdout]    |
[INFO] [stdout] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:20:26
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(next: Box<PatternElement>, elements: Vec<SetElement>, negated: bool) -> Set {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/set.rs:26:35
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:113:20
[INFO] [stdout]     |
[INFO] [stdout] 113 |     state: &'a mut MatchState,
[INFO] [stdout]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:119:27
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new(state: &'a mut MatchState) -> MatchStateProxy<'a> {
[INFO] [stdout]     |                           ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/matchers/set.rs:183:54
[INFO] [stdout]     |
[INFO] [stdout] 183 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]     |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     quantified: Box<PatternElement>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     next: Box<PatternElement>,
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:64
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:22:91
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stdout]    |                                                                                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/quantifiers.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/root.rs:9:23
[INFO] [stdout]   |
[INFO] [stdout] 9 |     children: Vec<Box<PatternElement>>,
[INFO] [stdout]   |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:13:34
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn new(children: Vec<Box<PatternElement>>) -> Root {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:17:45
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/root.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/matchers/slice.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 |     slice: &'a [Box<PatternElement>],
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn new(slice: &'a [Box<PatternElement>], capture: bool, startpos: usize, backmatch: bool) -> Slice<'a> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:18:35
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn simple(slice: &'a [Box<PatternElement>]) -> Slice<'a> {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchers/slice.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:11:35
[INFO] [stdout]    |
[INFO] [stdout] 11 |     userdata: HashMap<String, Box<Any>>,
[INFO] [stdout]    |                                   ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/matchstate.rs:74:54
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:20:54
[INFO] [stdout]    |
[INFO] [stdout] 20 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>>;
[INFO] [stdout]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:37:18
[INFO] [stdout]    |
[INFO] [stdout] 37 |     element: &'a PatternElement,
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:42:29
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn new(element: &'a PatternElement, next: Option<&'b Next>) -> Next<'a, 'b> {
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:46:31
[INFO] [stdout]    |
[INFO] [stdout] 46 |     pub fn element(&self) -> &PatternElement {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:54:39
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                       ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:60:35
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stdout]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:64:40
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn compare_next(&self, state: &mut MatchState, Option<&Next>) -> CompareResult {
[INFO] [stdout]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:73:44
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn parse(pattern: &[u8]) -> Result<Box<PatternElement>, String> {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:38
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/lib.rs:82:58
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stdout]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 59 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.75s
[INFO] running `Command { std: "docker" "inspect" "52327a820ff758160f35e7de957ecf717c95d34047da9975a8a78d9b72e10171", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "52327a820ff758160f35e7de957ecf717c95d34047da9975a8a78d9b72e10171", kill_on_drop: false }`
[INFO] [stdout] 52327a820ff758160f35e7de957ecf717c95d34047da9975a8a78d9b72e10171
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8f7d4760f96fd7f988343bd4fbabeff465bf0d391b20b9cca3f1d835fac1d723
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "8f7d4760f96fd7f988343bd4fbabeff465bf0d391b20b9cca3f1d835fac1d723", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/matchers/basic.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |             try!(write!(f, "%"));
[INFO] [stderr]     |             ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |         try!(write!(f, "("));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:55:13
[INFO] [stderr]    |
[INFO] [stderr] 55 |             try!(write!(f, "*"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |             try!(write!(f, "<"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:61:13
[INFO] [stderr]    |
[INFO] [stderr] 61 |             try!(write!(f, "{}", c));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 86 |         try!(write!(f, "["));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:88:13
[INFO] [stderr]    |
[INFO] [stderr] 88 |             try!(write!(f, "*"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:92:46
[INFO] [stderr]    |
[INFO] [stderr] 92 |                 &SetElement::PE(ref pe) => { try!(write!(f, "{}", pe)); },
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:94:21
[INFO] [stderr]    |
[INFO] [stderr] 94 |                     try!(write!(f, "{}", lower));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:95:21
[INFO] [stderr]    |
[INFO] [stderr] 95 |                     try!(write!(f, ":"));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:96:21
[INFO] [stderr]    |
[INFO] [stderr] 96 |                     try!(write!(f, "{}", upper));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/matchers/set.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |         try!(write!(f, "]"));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |         try!(write!(f, "{}", self.quantified));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:87:39
[INFO] [stderr]    |
[INFO] [stderr] 87 |             Quantification::Greedy => try!(write!(f, "+")),
[INFO] [stderr]    |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:88:42
[INFO] [stderr]    |
[INFO] [stderr] 88 |             Quantification::NonGreedy => try!(write!(f, "-")),
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:89:41
[INFO] [stderr]    |
[INFO] [stderr] 89 |             Quantification::Optional => try!(write!(f, "?")),
[INFO] [stderr]    |                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/root.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             try!(write!(f, "{}", c));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/basic.rs:38:35
[INFO] [stderr]    |
[INFO] [stderr] 38 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[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/matchers/basic.rs:58:35
[INFO] [stderr]    |
[INFO] [stderr] 58 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/basic.rs:79:35
[INFO] [stderr]    |
[INFO] [stderr] 79 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/matchers/basic.rs:102:13
[INFO] [stderr]     |
[INFO] [stderr] 102 |             try!(write!(f, "%"));
[INFO] [stderr]     |             ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/matchers/basic.rs:105:22
[INFO] [stderr]     |
[INFO] [stderr] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |         try!(write!(f, "("));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/basic.rs:112:35
[INFO] [stderr]     |
[INFO] [stderr] 112 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]     |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:12:23
[INFO] [stderr]    |
[INFO] [stderr] 12 |     children: Vec<Box<PatternElement>>,
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:55:13
[INFO] [stderr]    |
[INFO] [stderr] 55 |             try!(write!(f, "*"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:25:45
[INFO] [stderr]    |
[INFO] [stderr] 25 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:58:13
[INFO] [stderr]    |
[INFO] [stderr] 58 |             try!(write!(f, "<"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:32:40
[INFO] [stderr]    |
[INFO] [stderr] 32 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/set.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 |     next: Box<PatternElement>,
[INFO] [stderr]   |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/group.rs:61:13
[INFO] [stderr]    |
[INFO] [stderr] 61 |             try!(write!(f, "{}", c));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 |     PE(Box<PatternElement>),
[INFO] [stderr]    |            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 86 |         try!(write!(f, "["));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:16:20
[INFO] [stderr]    |
[INFO] [stderr] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:16:48
[INFO] [stderr]    |
[INFO] [stderr] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:88:13
[INFO] [stderr]    |
[INFO] [stderr] 88 |             try!(write!(f, "*"));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub fn new(next: Box<PatternElement>, elements: Vec<SetElement>, negated: bool) -> Set {
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:92:46
[INFO] [stderr]    |
[INFO] [stderr] 92 |                 &SetElement::PE(ref pe) => { try!(write!(f, "{}", pe)); },
[INFO] [stderr]    |                                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:94:21
[INFO] [stderr]    |
[INFO] [stderr] 94 |                     try!(write!(f, "{}", lower));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:95:21
[INFO] [stderr]    |
[INFO] [stderr] 95 |                     try!(write!(f, ":"));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/set.rs:96:21
[INFO] [stderr]    |
[INFO] [stderr] 96 |                     try!(write!(f, "{}", upper));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/matchers/set.rs:100:9
[INFO] [stderr]     |
[INFO] [stderr] 100 |         try!(write!(f, "]"));
[INFO] [stderr]     |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |         try!(write!(f, "{}", self.quantified));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:26:35
[INFO] [stderr]    |
[INFO] [stderr] 26 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:87:39
[INFO] [stderr]    |
[INFO] [stderr] 87 |             Quantification::Greedy => try!(write!(f, "+")),
[INFO] [stderr]    |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:88:42
[INFO] [stderr]    |
[INFO] [stderr] 88 |             Quantification::NonGreedy => try!(write!(f, "-")),
[INFO] [stderr]    |                                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/quantifiers.rs:89:41
[INFO] [stderr]    |
[INFO] [stderr] 89 |             Quantification::Optional => try!(write!(f, "?")),
[INFO] [stderr]    |                                         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:113:20
[INFO] [stderr]     |
[INFO] [stderr] 113 |     state: &'a mut MatchState,
[INFO] [stderr]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/matchers/root.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |             try!(write!(f, "{}", c));
[INFO] [stderr]    |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:119:27
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn new(state: &'a mut MatchState) -> MatchStateProxy<'a> {
[INFO] [stderr]     |                           ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:183:54
[INFO] [stderr]     |
[INFO] [stderr] 183 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stderr]     |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:17:21
[INFO] [stderr]    |
[INFO] [stderr] 17 |     quantified: Box<PatternElement>,
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/basic.rs:38:35
[INFO] [stderr]    |
[INFO] [stderr] 38 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[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/matchers/basic.rs:58:35
[INFO] [stderr]    |
[INFO] [stderr] 58 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/basic.rs:79:35
[INFO] [stderr]    |
[INFO] [stderr] 79 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/matchers/basic.rs:105:22
[INFO] [stderr]     |
[INFO] [stderr] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/basic.rs:112:35
[INFO] [stderr]     |
[INFO] [stderr] 112 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]     |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:12:23
[INFO] [stderr]    |
[INFO] [stderr] 12 |     children: Vec<Box<PatternElement>>,
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:25:45
[INFO] [stderr]    |
[INFO] [stderr] 25 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/group.rs:32:40
[INFO] [stderr]    |
[INFO] [stderr] 32 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/set.rs:9:15
[INFO] [stderr]   |
[INFO] [stderr] 9 |     next: Box<PatternElement>,
[INFO] [stderr]   |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 |     PE(Box<PatternElement>),
[INFO] [stderr]    |            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:16:20
[INFO] [stderr]    |
[INFO] [stderr] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:16:48
[INFO] [stderr]    |
[INFO] [stderr] 16 |     R { lower: Box<PatternElement>, upper: Box<PatternElement> },
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub fn new(next: Box<PatternElement>, elements: Vec<SetElement>, negated: bool) -> Set {
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/set.rs:26:35
[INFO] [stderr]    |
[INFO] [stderr] 26 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:113:20
[INFO] [stderr]     |
[INFO] [stderr] 113 |     state: &'a mut MatchState,
[INFO] [stderr]     |                    ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:119:27
[INFO] [stderr]     |
[INFO] [stderr] 119 |     fn new(state: &'a mut MatchState) -> MatchStateProxy<'a> {
[INFO] [stderr]     |                           ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/matchers/set.rs:183:54
[INFO] [stderr]     |
[INFO] [stderr] 183 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stderr]     |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:17:21
[INFO] [stderr]    |
[INFO] [stderr] 17 |     quantified: Box<PatternElement>,
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |     next: Box<PatternElement>,
[INFO] [stderr]    |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:22:64
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:22:91
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stderr]    |                                                                                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:28:35
[INFO] [stderr]    |
[INFO] [stderr] 28 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/root.rs:9:23
[INFO] [stderr]   |
[INFO] [stderr] 9 |     children: Vec<Box<PatternElement>>,
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:13:34
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub fn new(children: Vec<Box<PatternElement>>) -> Root {
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:17:45
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:25:35
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/slice.rs:7:21
[INFO] [stderr]   |
[INFO] [stderr] 7 |     slice: &'a [Box<PatternElement>],
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:14:32
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub fn new(slice: &'a [Box<PatternElement>], capture: bool, startpos: usize, backmatch: bool) -> Slice<'a> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:18:35
[INFO] [stderr]    |
[INFO] [stderr] 18 |     pub fn simple(slice: &'a [Box<PatternElement>]) -> Slice<'a> {
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:30:40
[INFO] [stderr]    |
[INFO] [stderr] 30 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchstate.rs:11:35
[INFO] [stderr]    |
[INFO] [stderr] 11 |     userdata: HashMap<String, Box<Any>>,
[INFO] [stderr]    |                                   ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchstate.rs:74:54
[INFO] [stderr]    |
[INFO] [stderr] 74 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stderr]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:20:54
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>>;
[INFO] [stderr]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:37:18
[INFO] [stderr]    |
[INFO] [stderr] 37 |     element: &'a PatternElement,
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:42:29
[INFO] [stderr]    |
[INFO] [stderr] 42 |     pub fn new(element: &'a PatternElement, next: Option<&'b Next>) -> Next<'a, 'b> {
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:46:31
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn element(&self) -> &PatternElement {
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:54:39
[INFO] [stderr]    |
[INFO] [stderr] 54 |     pub fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                       ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:60:35
[INFO] [stderr]    |
[INFO] [stderr] 60 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:64:40
[INFO] [stderr]    |
[INFO] [stderr] 64 |     fn compare_next(&self, state: &mut MatchState, Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:73:44
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub fn parse(pattern: &[u8]) -> Result<Box<PatternElement>, String> {
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/lib.rs:82:38
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/lib.rs:82:58
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: 59 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |     next: Box<PatternElement>,
[INFO] [stderr]    |               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:22:64
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:22:91
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn new(quantification: Quantification, quantified: Box<PatternElement>, next: Box<PatternElement>) -> Quantifier {
[INFO] [stderr]    |                                                                                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/quantifiers.rs:28:35
[INFO] [stderr]    |
[INFO] [stderr] 28 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/root.rs:9:23
[INFO] [stderr]   |
[INFO] [stderr] 9 |     children: Vec<Box<PatternElement>>,
[INFO] [stderr]   |                       ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:13:34
[INFO] [stderr]    |
[INFO] [stderr] 13 |     pub fn new(children: Vec<Box<PatternElement>>) -> Root {
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:17:45
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pub fn push_child(&mut self, child: Box<PatternElement>) {
[INFO] [stderr]    |                                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/root.rs:25:35
[INFO] [stderr]    |
[INFO] [stderr] 25 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/matchers/slice.rs:7:21
[INFO] [stderr]   |
[INFO] [stderr] 7 |     slice: &'a [Box<PatternElement>],
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:14:32
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub fn new(slice: &'a [Box<PatternElement>], capture: bool, startpos: usize, backmatch: bool) -> Slice<'a> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:18:35
[INFO] [stderr]    |
[INFO] [stderr] 18 |     pub fn simple(slice: &'a [Box<PatternElement>]) -> Slice<'a> {
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchers/slice.rs:30:40
[INFO] [stderr]    |
[INFO] [stderr] 30 |     fn compare_next(&self, state: &mut MatchState, next: Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchstate.rs:11:35
[INFO] [stderr]    |
[INFO] [stderr] 11 |     userdata: HashMap<String, Box<Any>>,
[INFO] [stderr]    |                                   ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/matchstate.rs:74:54
[INFO] [stderr]    |
[INFO] [stderr] 74 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>> {
[INFO] [stderr]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:20:54
[INFO] [stderr]    |
[INFO] [stderr] 20 |     fn get_ud(&mut self) -> &mut HashMap<String, Box<Any>>;
[INFO] [stderr]    |                                                      ^^^ help: use `dyn`: `dyn Any`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:37:18
[INFO] [stderr]    |
[INFO] [stderr] 37 |     element: &'a PatternElement,
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:42:29
[INFO] [stderr]    |
[INFO] [stderr] 42 |     pub fn new(element: &'a PatternElement, next: Option<&'b Next>) -> Next<'a, 'b> {
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:46:31
[INFO] [stderr]    |
[INFO] [stderr] 46 |     pub fn element(&self) -> &PatternElement {
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:54:39
[INFO] [stderr]    |
[INFO] [stderr] 54 |     pub fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                       ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:60:35
[INFO] [stderr]    |
[INFO] [stderr] 60 |     fn compare(&self, state: &mut MatchState) -> CompareResult {
[INFO] [stderr]    |                                   ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:64:40
[INFO] [stderr]    |
[INFO] [stderr] 64 |     fn compare_next(&self, state: &mut MatchState, Option<&Next>) -> CompareResult {
[INFO] [stderr]    |                                        ^^^^^^^^^^ help: use `dyn`: `dyn MatchState`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:73:44
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub fn parse(pattern: &[u8]) -> Result<Box<PatternElement>, String> {
[INFO] [stderr]    |                                            ^^^^^^^^^^^^^^ help: use `dyn`: `dyn PatternElement`
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/lib.rs:82:38
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/lib.rs:82:58
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: 59 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/clex-d84e097d275df261
[INFO] [stdout] running 0 tests
[INFO] [stderr]    Doc-tests clex
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/matchers/basic.rs:105:22
[INFO] [stderr]     |
[INFO] [stderr] 105 |             b @ 0x20 ... 0x7E => write!(f, "{}", b as char),
[INFO] [stderr]     |                      ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:82:38
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> /opt/rustwide/workdir/src/lib.rs:82:58
[INFO] [stderr]    |
[INFO] [stderr] 82 | ...                   c @ b'A' ... b'Z' | c @ b'a' ... b'z' => {
[INFO] [stderr]    |                                                    ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[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] running `Command { std: "docker" "inspect" "8f7d4760f96fd7f988343bd4fbabeff465bf0d391b20b9cca3f1d835fac1d723", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8f7d4760f96fd7f988343bd4fbabeff465bf0d391b20b9cca3f1d835fac1d723", kill_on_drop: false }`
[INFO] [stdout] 8f7d4760f96fd7f988343bd4fbabeff465bf0d391b20b9cca3f1d835fac1d723
