[INFO] crate kailua_types 1.1.0 is already in cache
[INFO] checking kailua_types-1.1.0 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate kailua_types 1.1.0 into /workspace/builds/worker-6/source
[INFO] validating manifest of crates.io crate kailua_types 1.1.0 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate kailua_types 1.1.0
[INFO] removed path dependency kailua_diag from crates.io crate kailua_types 1.1.0
[INFO] removed path dependency kailua_env from crates.io crate kailua_types 1.1.0
[INFO] removed path dependency kailua_syntax from crates.io crate kailua_types 1.1.0
[INFO] finished tweaking crates.io crate kailua_types 1.1.0
[INFO] tweaked toml for crates.io crate kailua_types 1.1.0 written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 08cbee207aa800f1339e9ecf6a0be1f87f98dd3407991b6a56c0578333dc3c7c
[INFO] running `"docker" "start" "-a" "08cbee207aa800f1339e9ecf6a0be1f87f98dd3407991b6a56c0578333dc3c7c"`
[INFO] [stderr]     Checking parse-generics-shim v0.1.1
[INFO] [stderr]     Checking kailua_env v1.0.4
[INFO] [stderr]     Checking vec_map v0.7.0
[INFO] [stderr]     Checking take_mut v0.1.3
[INFO] [stderr]     Checking atomic v0.3.4
[INFO] [stderr]     Checking parking_lot v0.4.8
[INFO] [stderr]     Checking kailua_diag v1.0.4
[INFO] [stderr]     Checking kailua_syntax v1.1.0
[INFO] [stderr]     Checking kailua_types v1.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:484:5
[INFO] [stderr]     |
[INFO] [stderr] 484 | /     bitflags! {
[INFO] [stderr] 485 | |         /// Type flags, a compact description of the type.
[INFO] [stderr] 486 | |         pub flags Flags: u16 {
[INFO] [stderr] 487 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 562 | |         }
[INFO] [stderr] 563 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:484:5
[INFO] [stderr]     |
[INFO] [stderr] 484 | /     bitflags! {
[INFO] [stderr] 485 | |         /// Type flags, a compact description of the type.
[INFO] [stderr] 486 | |         pub flags Flags: u16 {
[INFO] [stderr] 487 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 562 | |         }
[INFO] [stderr] 563 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:607:5
[INFO] [stderr]     |
[INFO] [stderr] 607 | /     bitflags! {
[INFO] [stderr] 608 | |         /// A subset of `Flags` that can be `Union`ed with no additional processing.
[INFO] [stderr] 609 | |         pub flags UnionedSimple: u16 {
[INFO] [stderr] 610 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 627 | |         }
[INFO] [stderr] 628 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:607:5
[INFO] [stderr]     |
[INFO] [stderr] 607 | /     bitflags! {
[INFO] [stderr] 608 | |         /// A subset of `Flags` that can be `Union`ed with no additional processing.
[INFO] [stderr] 609 | |         pub flags UnionedSimple: u16 {
[INFO] [stderr] 610 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 627 | |         }
[INFO] [stderr] 628 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/l10nutils.rs:53:48
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub struct QuotedList<'a, I: Iterator<Item=&'a Localize>> {
[INFO] [stderr]    |                                                ^^^^^^^^ help: use `dyn`: `dyn Localize`
[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/l10nutils.rs:58:31
[INFO] [stderr]    |
[INFO] [stderr] 58 | impl<'a, I: Iterator<Item=&'a Localize>> QuotedList<'a, I> {
[INFO] [stderr]    |                               ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/l10nutils.rs:64:31
[INFO] [stderr]    |
[INFO] [stderr] 64 | impl<'a, I: Iterator<Item=&'a Localize>> fmt::Display for QuotedList<'a, I> {
[INFO] [stderr]    |                               ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:111:61
[INFO] [stderr]     |
[INFO] [stderr] 111 | ...                   lhs: T, rhs: U, ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:183:50
[INFO] [stderr]     |
[INFO] [stderr] 183 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:196:49
[INFO] [stderr]     |
[INFO] [stderr] 196 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:209:55
[INFO] [stderr]     |
[INFO] [stderr] 209 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:223:66
[INFO] [stderr]     |
[INFO] [stderr] 223 |     pub fn cannot_union_single<T: Display>(mut self, t: T, ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:231:41
[INFO] [stderr]     |
[INFO] [stderr] 231 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:239:41
[INFO] [stderr]     |
[INFO] [stderr] 239 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:247:56
[INFO] [stderr]     |
[INFO] [stderr] 247 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:256:53
[INFO] [stderr]     |
[INFO] [stderr] 256 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:264:53
[INFO] [stderr]     |
[INFO] [stderr] 264 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:302:59
[INFO] [stderr]     |
[INFO] [stderr] 302 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:528:74
[INFO] [stderr]     |
[INFO] [stderr] 528 |                     let keys = QuotedList::new(keys.iter().map(|k| k as &Localize), r.locale);
[INFO] [stderr]     |                                                                          ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/message.rs:5:45
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type Ty<'a> = Displayed<'a, ty::Ty, &'a TypeContext>;
[INFO] [stderr]   |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/display.rs:15:22
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub context: &'a TypeContext,
[INFO] [stderr]    |                      ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/display.rs:28:61
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn new(f: &fmt::Formatter, locale: Locale, ctx: &'a TypeContext) -> DisplayState<'a> {
[INFO] [stderr]    |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:228:52
[INFO] [stderr]     |
[INFO] [stderr] 228 | impl<'b, 'c, T: Display + 'b> Displayed<'b, T, &'c TypeContext> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:231:80
[INFO] [stderr]     |
[INFO] [stderr] 231 |                          locale: Locale) -> Localized<'a, Displayed<'b, T, &'c TypeContext>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:236:65
[INFO] [stderr]     |
[INFO] [stderr] 236 | impl<'b, 'c, T: Display + 'b> Localize for Displayed<'b, T, &'c TypeContext> {
[INFO] [stderr]     |                                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/literals.rs:28:25
[INFO] [stderr]    |
[INFO] [stderr] 28 |              _ctx: &mut TypeContext) -> TypeResult<Numbers> {
[INFO] [stderr]    |                         ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/literals.rs:89:50
[INFO] [stderr]    |
[INFO] [stderr] 89 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:115:49
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:180:25
[INFO] [stderr]     |
[INFO] [stderr] 180 |              _ctx: &mut TypeContext) -> TypeResult<Strings> {
[INFO] [stderr]     |                         ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:238:50
[INFO] [stderr]     |
[INFO] [stderr] 238 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:261:49
[INFO] [stderr]     |
[INFO] [stderr] 261 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:105:39
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn generalize(self, ctx: &mut TypeContext) -> Tables {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:249:63
[INFO] [stderr]     |
[INFO] [stderr] 249 |     fn union(&self, other: &Tables, explicit: bool, ctx: &mut TypeContext) -> TypeResult<Tables> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:294:50
[INFO] [stderr]     |
[INFO] [stderr] 294 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:392:49
[INFO] [stderr]     |
[INFO] [stderr] 392 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:24:61
[INFO] [stderr]    |
[INFO] [stderr] 24 |     pub fn from_kind(func: &Spanned<FuncKind>, resolv: &mut TypeResolver) -> Result<Function> {
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:40:50
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:54:49
[INFO] [stderr]    |
[INFO] [stderr] 54 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/functions.rs:158:50
[INFO] [stderr]     |
[INFO] [stderr] 158 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/functions.rs:169:49
[INFO] [stderr]     |
[INFO] [stderr] 169 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/union.rs:83:43
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn from<'a>(ty: &T<'a>, ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:281:24
[INFO] [stderr]     |
[INFO] [stderr] 281 |              ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:349:50
[INFO] [stderr]     |
[INFO] [stderr] 349 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:380:49
[INFO] [stderr]     |
[INFO] [stderr] 380 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:332:39
[INFO] [stderr]     |
[INFO] [stderr] 332 |     pub fn generalize(self, ctx: &mut TypeContext) -> T<'static> {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:396:42
[INFO] [stderr]     |
[INFO] [stderr] 396 | ...                   ctx: &mut TypeContext) -> TypeResult<Cow<'b, T<'a>>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:423:60
[INFO] [stderr]     |
[INFO] [stderr] 423 |         fn narrow_tvar(tvar: TVar, flags: Flags, ctx: &mut TypeContext) -> TypeResult<TVar> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:501:24
[INFO] [stderr]     |
[INFO] [stderr] 501 |              ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:512:53
[INFO] [stderr]     |
[INFO] [stderr] 512 |     fn assert_sub(&self, other: &Unioned, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:590:52
[INFO] [stderr]     |
[INFO] [stderr] 590 |     fn assert_eq(&self, other: &Unioned, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:608:39
[INFO] [stderr]     |
[INFO] [stderr] 608 | ...                   ctx: &mut TypeContext) -> TypeResult<result::Result<T<'static>, Ty>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:609:52
[INFO] [stderr]     |
[INFO] [stderr] 609 |         fn resolve<'t, 'u>(t: &'t T<'u>, ctx: &mut TypeContext)
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:787:28
[INFO] [stderr]     |
[INFO] [stderr] 787 |                  ctx: &mut TypeContext) -> TypeResult<result::Result<T<'static>, Ty>> {
[INFO] [stderr]     |                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:793:51
[INFO] [stderr]     |
[INFO] [stderr] 793 |     fn assert_sub(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:856:50
[INFO] [stderr]     |
[INFO] [stderr] 856 |     fn assert_eq(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1187:57
[INFO] [stderr]      |
[INFO] [stderr] 1187 |     pub fn from_kind(kind: &Spanned<Kind>, resolv: &mut TypeResolver) -> Result<Ty> {
[INFO] [stderr]      |                                                         ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1188:69
[INFO] [stderr]      |
[INFO] [stderr] 1188 |         let slot_from_slotkind = |slotkind: &SlotKind, resolv: &mut TypeResolver| -> Result<Slot> {
[INFO] [stderr]      |                                                                     ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1433:43
[INFO] [stderr]      |
[INFO] [stderr] 1433 |     pub fn generalize(mut self, ctx: &mut TypeContext) -> Ty {
[INFO] [stderr]      |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1447:62
[INFO] [stderr]      |
[INFO] [stderr] 1447 |     pub fn filter_by_flags(mut self, flags: Flags, ctx: &mut TypeContext) -> TypeResult<Ty> {
[INFO] [stderr]      |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1571:32
[INFO] [stderr]      |
[INFO] [stderr] 1571 |                        ctx: &mut TypeContext) -> TypeResult<Ty> {
[INFO] [stderr]      |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1590:58
[INFO] [stderr]      |
[INFO] [stderr] 1590 |               fn assert_sub(&self, other: &$rhs, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]      |                                                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1678:57
[INFO] [stderr]      |
[INFO] [stderr] 1678 |               fn assert_eq(&self, other: &$rhs, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]      |                                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:173:62
[INFO] [stderr]     |
[INFO] [stderr] 173 |     fn assert_sub(&self, other: &UnliftedSlot<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:177:61
[INFO] [stderr]     |
[INFO] [stderr] 177 |     fn assert_eq(&self, other: &UnliftedSlot<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:183:48
[INFO] [stderr]     |
[INFO] [stderr] 183 |     fn assert_sub(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:187:47
[INFO] [stderr]     |
[INFO] [stderr] 187 |     fn assert_eq(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:193:51
[INFO] [stderr]     |
[INFO] [stderr] 193 |     fn assert_sub(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:197:50
[INFO] [stderr]     |
[INFO] [stderr] 197 |     fn assert_eq(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:249:39
[INFO] [stderr]     |
[INFO] [stderr] 249 |     pub fn generalize(self, ctx: &mut TypeContext) -> S {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:270:62
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn union(&self, other: &S, explicit: bool, ctx: &mut TypeContext) -> TypeResult<S> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:316:51
[INFO] [stderr]     |
[INFO] [stderr] 316 |     pub fn assert_sub(&self, other: &S, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:335:50
[INFO] [stderr]     |
[INFO] [stderr] 335 |     pub fn assert_eq(&self, other: &S, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:444:45
[INFO] [stderr]     |
[INFO] [stderr] 444 |     pub fn adapt(&self, flex: F, _ctx: &mut TypeContext) {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:459:48
[INFO] [stderr]     |
[INFO] [stderr] 459 |     pub fn accept(&self, rhs: &Slot, ctx: &mut TypeContext, init: bool) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:508:45
[INFO] [stderr]     |
[INFO] [stderr] 508 |     pub fn accept_in_place(&self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:534:59
[INFO] [stderr]     |
[INFO] [stderr] 534 |     pub fn filter_by_flags(&self, flags: Flags, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:575:40
[INFO] [stderr]     |
[INFO] [stderr] 575 |     pub fn generalize(&self, ctx: &mut TypeContext) -> Slot {
[INFO] [stderr]     |                                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:594:61
[INFO] [stderr]     |
[INFO] [stderr] 594 |     fn union(&self, other: &Slot, explicit: bool, ctx: &mut TypeContext) -> TypeResult<Slot> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:604:50
[INFO] [stderr]     |
[INFO] [stderr] 604 |     fn assert_sub(&self, other: &Slot, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:610:49
[INFO] [stderr]     |
[INFO] [stderr] 610 |     fn assert_eq(&self, other: &Slot, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:622:51
[INFO] [stderr]     |
[INFO] [stderr] 622 |     fn assert_sub(&self, other: &T<'a>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:628:50
[INFO] [stderr]     |
[INFO] [stderr] 628 |     fn assert_eq(&self, other: &T<'a>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:636:48
[INFO] [stderr]     |
[INFO] [stderr] 636 |     fn assert_sub(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:642:47
[INFO] [stderr]     |
[INFO] [stderr] 642 |     fn assert_eq(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:172:67
[INFO] [stderr]     |
[INFO] [stderr] 172 |                   seq: &Seq<T, Spanned<Kind>>, map: F, resolv: &mut TypeResolver, $($span: $spanty,)*
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:268:32
[INFO] [stderr]     |
[INFO] [stderr] 268 |                        ctx: &mut TypeContext) -> TypeResult<$tyseq> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:304:60
[INFO] [stderr]     |
[INFO] [stderr] 304 |               fn assert_sub(&self, other: &$tyseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:314:59
[INFO] [stderr]     |
[INFO] [stderr] 314 |               fn assert_eq(&self, other: &$tyseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:513:32
[INFO] [stderr]     |
[INFO] [stderr] 513 |                        ctx: &mut TypeContext) -> TypeResult<$slotseq> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:553:62
[INFO] [stderr]     |
[INFO] [stderr] 553 |               fn assert_sub(&self, other: &$slotseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:563:61
[INFO] [stderr]     |
[INFO] [stderr] 563 |               fn assert_eq(&self, other: &$slotseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:135:43
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub fn from(attr: &Attr, resolv: &mut TypeResolver) -> Result<Option<Tag>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:136:39
[INFO] [stderr]     |
[INFO] [stderr] 136 |         let no_values = |resolv: &mut TypeResolver, tag| {
[INFO] [stderr]     |                                       ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:143:36
[INFO] [stderr]     |
[INFO] [stderr] 143 |         let values = |resolv: &mut TypeResolver, count| {
[INFO] [stderr]     |                                    ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:149:27
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn context(&self) -> &TypeContext;
[INFO] [stderr]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:152:39
[INFO] [stderr]     |
[INFO] [stderr] 152 |     fn context_mut(&mut self) -> &mut TypeContext;
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:162:27
[INFO] [stderr]     |
[INFO] [stderr] 162 |     fn context(&self) -> &TypeContext {
[INFO] [stderr]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:165:39
[INFO] [stderr]     |
[INFO] [stderr] 165 |     fn context_mut(&mut self) -> &mut TypeContext {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:252:36
[INFO] [stderr]     |
[INFO] [stderr] 252 |         &self, rvar: RVar, f: &mut FnMut(&Key, &Slot) -> result::Result<(), ()>
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> result::Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:321:24
[INFO] [stderr]     |
[INFO] [stderr] 321 |              ctx: &mut TypeContext) -> TypeResult<Self::Output>;
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:327:51
[INFO] [stderr]     |
[INFO] [stderr] 327 |     fn assert_sub(&self, other: &Other, ctx: &mut TypeContext) -> TypeResult<()>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:330:50
[INFO] [stderr]     |
[INFO] [stderr] 330 |     fn assert_eq(&self, other: &Other, ctx: &mut TypeContext) -> TypeResult<()>;
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:337:24
[INFO] [stderr]     |
[INFO] [stderr] 337 |              ctx: &mut TypeContext) -> TypeResult<Self::Output> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:343:52
[INFO] [stderr]     |
[INFO] [stderr] 343 |     fn assert_sub(&self, other: &Box<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:347:51
[INFO] [stderr]     |
[INFO] [stderr] 347 |     fn assert_eq(&self, other: &Box<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:356:24
[INFO] [stderr]     |
[INFO] [stderr] 356 |              ctx: &mut TypeContext) -> TypeResult<Self::Output> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:364:56
[INFO] [stderr]     |
[INFO] [stderr] 364 |     fn assert_sub(&self, other: &Spanned<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:370:55
[INFO] [stderr]     |
[INFO] [stderr] 370 |     fn assert_eq(&self, other: &Spanned<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:442:37
[INFO] [stderr]     |
[INFO] [stderr] 442 |         &self, rvar: RVar, _f: &mut FnMut(&Key, &Slot) -> result::Result<(), ()>
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> result::Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:461:50
[INFO] [stderr]     |
[INFO] [stderr] 461 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:465:49
[INFO] [stderr]     |
[INFO] [stderr] 465 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:471:50
[INFO] [stderr]     |
[INFO] [stderr] 471 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:475:49
[INFO] [stderr]     |
[INFO] [stderr] 475 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:226:18
[INFO] [stderr]     |
[INFO] [stderr] 226 |     classes: Box<ClassProvider>,
[INFO] [stderr]     |                  ^^^^^^^^^^^^^ help: use `dyn`: `dyn ClassProvider`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:231:45
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn new(locale: Locale, classes: Box<ClassProvider>) -> Types {
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^ help: use `dyn`: `dyn ClassProvider`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:723:40
[INFO] [stderr]     |
[INFO] [stderr] 723 |         &self, mut rvar: RVar, f: &mut FnMut(&Key, &Slot) -> Result<(), ()>
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:484:5
[INFO] [stderr]     |
[INFO] [stderr] 484 | /     bitflags! {
[INFO] [stderr] 485 | |         /// Type flags, a compact description of the type.
[INFO] [stderr] 486 | |         pub flags Flags: u16 {
[INFO] [stderr] 487 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 562 | |         }
[INFO] [stderr] 563 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:484:5
[INFO] [stderr]     |
[INFO] [stderr] 484 | /     bitflags! {
[INFO] [stderr] 485 | |         /// Type flags, a compact description of the type.
[INFO] [stderr] 486 | |         pub flags Flags: u16 {
[INFO] [stderr] 487 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 562 | |         }
[INFO] [stderr] 563 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:607:5
[INFO] [stderr]     |
[INFO] [stderr] 607 | /     bitflags! {
[INFO] [stderr] 608 | |         /// A subset of `Flags` that can be `Union`ed with no additional processing.
[INFO] [stderr] 609 | |         pub flags UnionedSimple: u16 {
[INFO] [stderr] 610 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 627 | |         }
[INFO] [stderr] 628 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'try': use the `?` operator instead
[INFO] [stderr]    --> src/ty/mod.rs:607:5
[INFO] [stderr]     |
[INFO] [stderr] 607 | /     bitflags! {
[INFO] [stderr] 608 | |         /// A subset of `Flags` that can be `Union`ed with no additional processing.
[INFO] [stderr] 609 | |         pub flags UnionedSimple: u16 {
[INFO] [stderr] 610 | |             /// Empty flags.
[INFO] [stderr] ...   |
[INFO] [stderr] 627 | |         }
[INFO] [stderr] 628 | |     }
[INFO] [stderr]     | |_____^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/l10nutils.rs:53:48
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub struct QuotedList<'a, I: Iterator<Item=&'a Localize>> {
[INFO] [stderr]    |                                                ^^^^^^^^ help: use `dyn`: `dyn Localize`
[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/l10nutils.rs:58:31
[INFO] [stderr]    |
[INFO] [stderr] 58 | impl<'a, I: Iterator<Item=&'a Localize>> QuotedList<'a, I> {
[INFO] [stderr]    |                               ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/l10nutils.rs:64:31
[INFO] [stderr]    |
[INFO] [stderr] 64 | impl<'a, I: Iterator<Item=&'a Localize>> fmt::Display for QuotedList<'a, I> {
[INFO] [stderr]    |                               ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:111:61
[INFO] [stderr]     |
[INFO] [stderr] 111 | ...                   lhs: T, rhs: U, ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:183:50
[INFO] [stderr]     |
[INFO] [stderr] 183 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:196:49
[INFO] [stderr]     |
[INFO] [stderr] 196 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:209:55
[INFO] [stderr]     |
[INFO] [stderr] 209 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:223:66
[INFO] [stderr]     |
[INFO] [stderr] 223 |     pub fn cannot_union_single<T: Display>(mut self, t: T, ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:231:41
[INFO] [stderr]     |
[INFO] [stderr] 231 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:239:41
[INFO] [stderr]     |
[INFO] [stderr] 239 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:247:56
[INFO] [stderr]     |
[INFO] [stderr] 247 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:256:53
[INFO] [stderr]     |
[INFO] [stderr] 256 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:264:53
[INFO] [stderr]     |
[INFO] [stderr] 264 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:302:59
[INFO] [stderr]     |
[INFO] [stderr] 302 | ...                   ctx: &TypeContext) -> TypeReport {
[INFO] [stderr]     |                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/diag.rs:528:74
[INFO] [stderr]     |
[INFO] [stderr] 528 |                     let keys = QuotedList::new(keys.iter().map(|k| k as &Localize), r.locale);
[INFO] [stderr]     |                                                                          ^^^^^^^^ help: use `dyn`: `dyn Localize`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/message.rs:5:45
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type Ty<'a> = Displayed<'a, ty::Ty, &'a TypeContext>;
[INFO] [stderr]   |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/display.rs:15:22
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub context: &'a TypeContext,
[INFO] [stderr]    |                      ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/display.rs:28:61
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn new(f: &fmt::Formatter, locale: Locale, ctx: &'a TypeContext) -> DisplayState<'a> {
[INFO] [stderr]    |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:228:52
[INFO] [stderr]     |
[INFO] [stderr] 228 | impl<'b, 'c, T: Display + 'b> Displayed<'b, T, &'c TypeContext> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:231:80
[INFO] [stderr]     |
[INFO] [stderr] 231 |                          locale: Locale) -> Localized<'a, Displayed<'b, T, &'c TypeContext>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/display.rs:236:65
[INFO] [stderr]     |
[INFO] [stderr] 236 | impl<'b, 'c, T: Display + 'b> Localize for Displayed<'b, T, &'c TypeContext> {
[INFO] [stderr]     |                                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/literals.rs:28:25
[INFO] [stderr]    |
[INFO] [stderr] 28 |              _ctx: &mut TypeContext) -> TypeResult<Numbers> {
[INFO] [stderr]    |                         ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/literals.rs:89:50
[INFO] [stderr]    |
[INFO] [stderr] 89 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:115:49
[INFO] [stderr]     |
[INFO] [stderr] 115 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:180:25
[INFO] [stderr]     |
[INFO] [stderr] 180 |              _ctx: &mut TypeContext) -> TypeResult<Strings> {
[INFO] [stderr]     |                         ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:238:50
[INFO] [stderr]     |
[INFO] [stderr] 238 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/literals.rs:261:49
[INFO] [stderr]     |
[INFO] [stderr] 261 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:105:39
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn generalize(self, ctx: &mut TypeContext) -> Tables {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:249:63
[INFO] [stderr]     |
[INFO] [stderr] 249 |     fn union(&self, other: &Tables, explicit: bool, ctx: &mut TypeContext) -> TypeResult<Tables> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:294:50
[INFO] [stderr]     |
[INFO] [stderr] 294 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tables.rs:392:49
[INFO] [stderr]     |
[INFO] [stderr] 392 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:24:61
[INFO] [stderr]    |
[INFO] [stderr] 24 |     pub fn from_kind(func: &Spanned<FuncKind>, resolv: &mut TypeResolver) -> Result<Function> {
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:40:50
[INFO] [stderr]    |
[INFO] [stderr] 40 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/functions.rs:54:49
[INFO] [stderr]    |
[INFO] [stderr] 54 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]    |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/functions.rs:158:50
[INFO] [stderr]     |
[INFO] [stderr] 158 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/functions.rs:169:49
[INFO] [stderr]     |
[INFO] [stderr] 169 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ty/union.rs:83:43
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn from<'a>(ty: &T<'a>, ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]    |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:281:24
[INFO] [stderr]     |
[INFO] [stderr] 281 |              ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:349:50
[INFO] [stderr]     |
[INFO] [stderr] 349 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/union.rs:380:49
[INFO] [stderr]     |
[INFO] [stderr] 380 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:332:39
[INFO] [stderr]     |
[INFO] [stderr] 332 |     pub fn generalize(self, ctx: &mut TypeContext) -> T<'static> {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:396:42
[INFO] [stderr]     |
[INFO] [stderr] 396 | ...                   ctx: &mut TypeContext) -> TypeResult<Cow<'b, T<'a>>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:423:60
[INFO] [stderr]     |
[INFO] [stderr] 423 |         fn narrow_tvar(tvar: TVar, flags: Flags, ctx: &mut TypeContext) -> TypeResult<TVar> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:501:24
[INFO] [stderr]     |
[INFO] [stderr] 501 |              ctx: &mut TypeContext) -> TypeResult<Unioned> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:512:53
[INFO] [stderr]     |
[INFO] [stderr] 512 |     fn assert_sub(&self, other: &Unioned, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:590:52
[INFO] [stderr]     |
[INFO] [stderr] 590 |     fn assert_eq(&self, other: &Unioned, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:608:39
[INFO] [stderr]     |
[INFO] [stderr] 608 | ...                   ctx: &mut TypeContext) -> TypeResult<result::Result<T<'static>, Ty>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:609:52
[INFO] [stderr]     |
[INFO] [stderr] 609 |         fn resolve<'t, 'u>(t: &'t T<'u>, ctx: &mut TypeContext)
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:787:28
[INFO] [stderr]     |
[INFO] [stderr] 787 |                  ctx: &mut TypeContext) -> TypeResult<result::Result<T<'static>, Ty>> {
[INFO] [stderr]     |                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:793:51
[INFO] [stderr]     |
[INFO] [stderr] 793 |     fn assert_sub(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/value.rs:856:50
[INFO] [stderr]     |
[INFO] [stderr] 856 |     fn assert_eq(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1187:57
[INFO] [stderr]      |
[INFO] [stderr] 1187 |     pub fn from_kind(kind: &Spanned<Kind>, resolv: &mut TypeResolver) -> Result<Ty> {
[INFO] [stderr]      |                                                         ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1188:69
[INFO] [stderr]      |
[INFO] [stderr] 1188 |         let slot_from_slotkind = |slotkind: &SlotKind, resolv: &mut TypeResolver| -> Result<Slot> {
[INFO] [stderr]      |                                                                     ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1433:43
[INFO] [stderr]      |
[INFO] [stderr] 1433 |     pub fn generalize(mut self, ctx: &mut TypeContext) -> Ty {
[INFO] [stderr]      |                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1447:62
[INFO] [stderr]      |
[INFO] [stderr] 1447 |     pub fn filter_by_flags(mut self, flags: Flags, ctx: &mut TypeContext) -> TypeResult<Ty> {
[INFO] [stderr]      |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1571:32
[INFO] [stderr]      |
[INFO] [stderr] 1571 |                        ctx: &mut TypeContext) -> TypeResult<Ty> {
[INFO] [stderr]      |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1590:58
[INFO] [stderr]      |
[INFO] [stderr] 1590 |               fn assert_sub(&self, other: &$rhs, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]      |                                                            ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/ty/value.rs:1678:57
[INFO] [stderr]      |
[INFO] [stderr] 1678 |               fn assert_eq(&self, other: &$rhs, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]      |                                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 1749 | / define_ty_impls! {
[INFO] [stderr] 1750 | |     impl['a] lhs: T<'a>, rhs: Ty {
[INFO] [stderr] 1751 | |         origin = Origin::TTy;
[INFO] [stderr] 1752 | |         text = "T w/o nil", "Ty";
[INFO] [stderr] ...    |
[INFO] [stderr] 1790 | |     }
[INFO] [stderr] 1791 | | }
[INFO] [stderr]      | |_- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused macro definition
[INFO] [stderr]     --> src/ty/value.rs:1875:5
[INFO] [stderr]      |
[INFO] [stderr] 1875 | /     macro_rules! hash {
[INFO] [stderr] 1876 | |         ($($k:ident = $v:expr),*) => (vec![$((s(stringify!($k)), $v)),*])
[INFO] [stderr] 1877 | |     }
[INFO] [stderr]      | |_____^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_macros)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:173:62
[INFO] [stderr]     |
[INFO] [stderr] 173 |     fn assert_sub(&self, other: &UnliftedSlot<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:177:61
[INFO] [stderr]     |
[INFO] [stderr] 177 |     fn assert_eq(&self, other: &UnliftedSlot<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:183:48
[INFO] [stderr]     |
[INFO] [stderr] 183 |     fn assert_sub(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:187:47
[INFO] [stderr]     |
[INFO] [stderr] 187 |     fn assert_eq(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:193:51
[INFO] [stderr]     |
[INFO] [stderr] 193 |     fn assert_sub(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:197:50
[INFO] [stderr]     |
[INFO] [stderr] 197 |     fn assert_eq(&self, other: &T<'b>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:249:39
[INFO] [stderr]     |
[INFO] [stderr] 249 |     pub fn generalize(self, ctx: &mut TypeContext) -> S {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:270:62
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn union(&self, other: &S, explicit: bool, ctx: &mut TypeContext) -> TypeResult<S> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:316:51
[INFO] [stderr]     |
[INFO] [stderr] 316 |     pub fn assert_sub(&self, other: &S, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:335:50
[INFO] [stderr]     |
[INFO] [stderr] 335 |     pub fn assert_eq(&self, other: &S, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:444:45
[INFO] [stderr]     |
[INFO] [stderr] 444 |     pub fn adapt(&self, flex: F, _ctx: &mut TypeContext) {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:459:48
[INFO] [stderr]     |
[INFO] [stderr] 459 |     pub fn accept(&self, rhs: &Slot, ctx: &mut TypeContext, init: bool) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:508:45
[INFO] [stderr]     |
[INFO] [stderr] 508 |     pub fn accept_in_place(&self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:534:59
[INFO] [stderr]     |
[INFO] [stderr] 534 |     pub fn filter_by_flags(&self, flags: Flags, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:575:40
[INFO] [stderr]     |
[INFO] [stderr] 575 |     pub fn generalize(&self, ctx: &mut TypeContext) -> Slot {
[INFO] [stderr]     |                                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:594:61
[INFO] [stderr]     |
[INFO] [stderr] 594 |     fn union(&self, other: &Slot, explicit: bool, ctx: &mut TypeContext) -> TypeResult<Slot> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:604:50
[INFO] [stderr]     |
[INFO] [stderr] 604 |     fn assert_sub(&self, other: &Slot, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:610:49
[INFO] [stderr]     |
[INFO] [stderr] 610 |     fn assert_eq(&self, other: &Slot, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:622:51
[INFO] [stderr]     |
[INFO] [stderr] 622 |     fn assert_sub(&self, other: &T<'a>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:628:50
[INFO] [stderr]     |
[INFO] [stderr] 628 |     fn assert_eq(&self, other: &T<'a>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:636:48
[INFO] [stderr]     |
[INFO] [stderr] 636 |     fn assert_sub(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/slot.rs:642:47
[INFO] [stderr]     |
[INFO] [stderr] 642 |     fn assert_eq(&self, other: &Ty, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:172:67
[INFO] [stderr]     |
[INFO] [stderr] 172 |                   seq: &Seq<T, Spanned<Kind>>, map: F, resolv: &mut TypeResolver, $($span: $spanty,)*
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:268:32
[INFO] [stderr]     |
[INFO] [stderr] 268 |                        ctx: &mut TypeContext) -> TypeResult<$tyseq> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:304:60
[INFO] [stderr]     |
[INFO] [stderr] 304 |               fn assert_sub(&self, other: &$tyseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                              ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:314:59
[INFO] [stderr]     |
[INFO] [stderr] 314 |               fn assert_eq(&self, other: &$tyseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 593 | / define_tyseq! {
[INFO] [stderr] 594 | |     /// A sequence of value types.
[INFO] [stderr] 595 | |     type TySeq {
[INFO] [stderr] 596 | |         t = ['a] T<'a>;
[INFO] [stderr] ...   |
[INFO] [stderr] 629 | |     }
[INFO] [stderr] 630 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:513:32
[INFO] [stderr]     |
[INFO] [stderr] 513 |                        ctx: &mut TypeContext) -> TypeResult<$slotseq> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:553:62
[INFO] [stderr]     |
[INFO] [stderr] 553 |               fn assert_sub(&self, other: &$slotseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                                ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/seq.rs:563:61
[INFO] [stderr]     |
[INFO] [stderr] 563 |               fn assert_eq(&self, other: &$slotseq, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] ...
[INFO] [stderr] 632 | / define_slotseq! {
[INFO] [stderr] 633 | |     /// A sequence of slot types.
[INFO] [stderr] 634 | |     type SlotSeq <- TySeq {
[INFO] [stderr] 635 | |         slot = Slot;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | |     }
[INFO] [stderr] 671 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:135:43
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub fn from(attr: &Attr, resolv: &mut TypeResolver) -> Result<Option<Tag>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:136:39
[INFO] [stderr]     |
[INFO] [stderr] 136 |         let no_values = |resolv: &mut TypeResolver, tag| {
[INFO] [stderr]     |                                       ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/tag.rs:143:36
[INFO] [stderr]     |
[INFO] [stderr] 143 |         let values = |resolv: &mut TypeResolver, count| {
[INFO] [stderr]     |                                    ^^^^^^^^^^^^ help: use `dyn`: `dyn TypeResolver`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:149:27
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn context(&self) -> &TypeContext;
[INFO] [stderr]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:152:39
[INFO] [stderr]     |
[INFO] [stderr] 152 |     fn context_mut(&mut self) -> &mut TypeContext;
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:162:27
[INFO] [stderr]     |
[INFO] [stderr] 162 |     fn context(&self) -> &TypeContext {
[INFO] [stderr]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:165:39
[INFO] [stderr]     |
[INFO] [stderr] 165 |     fn context_mut(&mut self) -> &mut TypeContext {
[INFO] [stderr]     |                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:252:36
[INFO] [stderr]     |
[INFO] [stderr] 252 |         &self, rvar: RVar, f: &mut FnMut(&Key, &Slot) -> result::Result<(), ()>
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> result::Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:321:24
[INFO] [stderr]     |
[INFO] [stderr] 321 |              ctx: &mut TypeContext) -> TypeResult<Self::Output>;
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:327:51
[INFO] [stderr]     |
[INFO] [stderr] 327 |     fn assert_sub(&self, other: &Other, ctx: &mut TypeContext) -> TypeResult<()>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:330:50
[INFO] [stderr]     |
[INFO] [stderr] 330 |     fn assert_eq(&self, other: &Other, ctx: &mut TypeContext) -> TypeResult<()>;
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:337:24
[INFO] [stderr]     |
[INFO] [stderr] 337 |              ctx: &mut TypeContext) -> TypeResult<Self::Output> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:343:52
[INFO] [stderr]     |
[INFO] [stderr] 343 |     fn assert_sub(&self, other: &Box<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:347:51
[INFO] [stderr]     |
[INFO] [stderr] 347 |     fn assert_eq(&self, other: &Box<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:356:24
[INFO] [stderr]     |
[INFO] [stderr] 356 |              ctx: &mut TypeContext) -> TypeResult<Self::Output> {
[INFO] [stderr]     |                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:364:56
[INFO] [stderr]     |
[INFO] [stderr] 364 |     fn assert_sub(&self, other: &Spanned<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:370:55
[INFO] [stderr]     |
[INFO] [stderr] 370 |     fn assert_eq(&self, other: &Spanned<B>, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:442:37
[INFO] [stderr]     |
[INFO] [stderr] 442 |         &self, rvar: RVar, _f: &mut FnMut(&Key, &Slot) -> result::Result<(), ()>
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> result::Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:461:50
[INFO] [stderr]     |
[INFO] [stderr] 461 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:465:49
[INFO] [stderr]     |
[INFO] [stderr] 465 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:471:50
[INFO] [stderr]     |
[INFO] [stderr] 471 |     fn assert_sub(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ty/mod.rs:475:49
[INFO] [stderr]     |
[INFO] [stderr] 475 |     fn assert_eq(&self, other: &Self, ctx: &mut TypeContext) -> TypeResult<()> {
[INFO] [stderr]     |                                                 ^^^^^^^^^^^ help: use `dyn`: `dyn TypeContext`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:226:18
[INFO] [stderr]     |
[INFO] [stderr] 226 |     classes: Box<ClassProvider>,
[INFO] [stderr]     |                  ^^^^^^^^^^^^^ help: use `dyn`: `dyn ClassProvider`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:231:45
[INFO] [stderr]     |
[INFO] [stderr] 231 |     pub fn new(locale: Locale, classes: Box<ClassProvider>) -> Types {
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^ help: use `dyn`: `dyn ClassProvider`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/env/mod.rs:723:40
[INFO] [stderr]     |
[INFO] [stderr] 723 |         &self, mut rvar: RVar, f: &mut FnMut(&Key, &Slot) -> Result<(), ()>
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&Key, &Slot) -> Result<(), ()>`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/ty/display.rs:78:13
[INFO] [stderr]    |
[INFO] [stderr] 78 |         let mut spans = disambig.entry(name.base.clone()).or_insert_with(|| HashMap::new());
[INFO] [stderr]    |             ----^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/ty/display.rs:78:13
[INFO] [stderr]    |
[INFO] [stderr] 78 |         let mut spans = disambig.entry(name.base.clone()).or_insert_with(|| HashMap::new());
[INFO] [stderr]    |             ----^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1966 |           check!(T::Dynamic(Dyn::Oops), T::Dynamic(Dyn::Oops); T::Dynamic(Dyn::Oops));
[INFO] [stderr]      |           ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1967 |           check!(T::Dynamic(Dyn::Oops), T::Dynamic(Dyn::User); T::Dynamic(Dyn::Oops));
[INFO] [stderr]      |           ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1968 |           check!(T::Dynamic(Dyn::User), T::Dynamic(Dyn::Oops); T::Dynamic(Dyn::Oops));
[INFO] [stderr]      |           ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1969 |           check!(T::Dynamic(Dyn::User), T::Dynamic(Dyn::User); T::Dynamic(Dyn::User));
[INFO] [stderr]      |           ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1970 |           check!(T::Dynamic(Dyn::User), T::Integer; T::Dynamic(Dyn::User));
[INFO] [stderr]      |           ----------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1975 |           check!(T::All, T::Boolean; T::All);
[INFO] [stderr]      |           ----------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1976 |           check!(T::Dynamic(Dyn::User), T::All; T::Dynamic(Dyn::User));
[INFO] [stderr]      |           ------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1977 |           check!(T::All, T::All; T::All);
[INFO] [stderr]      |           ------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1980 |           check!(T::Integer, T::Number; T::Number);
[INFO] [stderr]      |           ----------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1981 |           check!(T::Number, T::Integer; T::Number);
[INFO] [stderr]      |           ----------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1982 |           check!(T::Number, T::Number; T::Number);
[INFO] [stderr]      |           ---------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1983 |           check!(T::Integer, T::Integer; T::Integer);
[INFO] [stderr]      |           ------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1984 |           check!(T::Int(3), T::Int(3); T::Int(3));
[INFO] [stderr]      |           ---------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1985 |           check!(T::Int(3), T::Number; T::Number);
[INFO] [stderr]      |           ---------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1986 |           check!(T::Integer, T::Int(3); T::Integer);
[INFO] [stderr]      |           ------------------------------------------ in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1987 | /         check!(T::Int(3), T::Int(4);
[INFO] [stderr] 1988 | |                explicit=T::ints(vec![3, 4]), implicit=T::Integer);
[INFO] [stderr]      | |__________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1987 | /         check!(T::Int(3), T::Int(4);
[INFO] [stderr] 1988 | |                explicit=T::ints(vec![3, 4]), implicit=T::Integer);
[INFO] [stderr]      | |__________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1989 |           check!(T::ints(vec![3, 4]), T::Int(3); T::ints(vec![3, 4]));
[INFO] [stderr]      |           ------------------------------------------------------------ in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1990 | /         check!(T::Int(5), T::ints(vec![3, 4]);
[INFO] [stderr] 1991 | |                explicit=T::ints(vec![3, 4, 5]), implicit=T::Integer);
[INFO] [stderr]      | |_____________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1990 | /         check!(T::Int(5), T::ints(vec![3, 4]);
[INFO] [stderr] 1991 | |                explicit=T::ints(vec![3, 4, 5]), implicit=T::Integer);
[INFO] [stderr]      | |_____________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1992 | /         check!(T::ints(vec![3, 4]), T::ints(vec![5, 4, 7]);
[INFO] [stderr] 1993 | |                explicit=T::ints(vec![3, 4, 5, 7]), implicit=T::Integer);
[INFO] [stderr]      | |________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1992 | /         check!(T::ints(vec![3, 4]), T::ints(vec![5, 4, 7]);
[INFO] [stderr] 1993 | |                explicit=T::ints(vec![3, 4, 5, 7]), implicit=T::Integer);
[INFO] [stderr]      | |________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1994 | /         check!(T::ints(vec![3, 4, 5]), T::ints(vec![2, 3, 4]);
[INFO] [stderr] 1995 | |                explicit=T::ints(vec![2, 3, 4, 5]), implicit=T::Integer);
[INFO] [stderr]      | |________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1994 | /         check!(T::ints(vec![3, 4, 5]), T::ints(vec![2, 3, 4]);
[INFO] [stderr] 1995 | |                explicit=T::ints(vec![2, 3, 4, 5]), implicit=T::Integer);
[INFO] [stderr]      | |________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1996 |           check!(T::ints(vec![3, 4, 5]), T::ints(vec![3, 4, 5]); T::ints(vec![3, 4, 5]));
[INFO] [stderr]      |           ------------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 1999 |           check!(T::String, T::Str(os("hello")); T::String);
[INFO] [stderr]      |           -------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2000 |           check!(T::Str(os("hello")), T::String; T::String);
[INFO] [stderr]      |           -------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2001 |           check!(T::Str(os("hello")), T::Str(os("hello")); T::Str(os("hello")));
[INFO] [stderr]      |           ---------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2002 | /         check!(T::Str(os("hello")), T::Str(os("goodbye"));
[INFO] [stderr] 2003 | |                explicit=T::strs(vec![s("hello"), s("goodbye")]), implicit=T::String);
[INFO] [stderr]      | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2002 | /         check!(T::Str(os("hello")), T::Str(os("goodbye"));
[INFO] [stderr] 2003 | |                explicit=T::strs(vec![s("hello"), s("goodbye")]), implicit=T::String);
[INFO] [stderr]      | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2004 | /         check!(T::Str(os("hello")), T::strs(vec![s("goodbye")]);
[INFO] [stderr] 2005 | |                explicit=T::strs(vec![s("hello"), s("goodbye")]), implicit=T::String);
[INFO] [stderr]      | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2004 | /         check!(T::Str(os("hello")), T::strs(vec![s("goodbye")]);
[INFO] [stderr] 2005 | |                explicit=T::strs(vec![s("hello"), s("goodbye")]), implicit=T::String);
[INFO] [stderr]      | |_____________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2006 | /         check!(T::strs(vec![s("hello"), s("goodbye")]), T::Str(os("goodbye"));
[INFO] [stderr] 2007 | |                T::strs(vec![s("hello"), s("goodbye")]));
[INFO] [stderr]      | |________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2008 | /         check!(T::strs(vec![s("hello"), s("goodbye")]),
[INFO] [stderr] 2009 | |                T::strs(vec![s("what"), s("goodbye")]);
[INFO] [stderr] 2010 | |                explicit=T::strs(vec![s("hello"), s("goodbye"), s("what")]), implicit=T::String);
[INFO] [stderr]      | |________________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2008 | /         check!(T::strs(vec![s("hello"), s("goodbye")]),
[INFO] [stderr] 2009 | |                T::strs(vec![s("what"), s("goodbye")]);
[INFO] [stderr] 2010 | |                explicit=T::strs(vec![s("hello"), s("goodbye"), s("what")]), implicit=T::String);
[INFO] [stderr]      | |________________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2011 | /         check!(T::strs(vec![s("a"), s("b"), s("c")]),
[INFO] [stderr] 2012 | |                T::strs(vec![s("b"), s("c"), s("d")]);
[INFO] [stderr] 2013 | |                explicit=T::strs(vec![s("a"), s("b"), s("c"), s("d")]), implicit=T::String);
[INFO] [stderr]      | |___________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2011 | /         check!(T::strs(vec![s("a"), s("b"), s("c")]),
[INFO] [stderr] 2012 | |                T::strs(vec![s("b"), s("c"), s("d")]);
[INFO] [stderr] 2013 | |                explicit=T::strs(vec![s("a"), s("b"), s("c"), s("d")]), implicit=T::String);
[INFO] [stderr]      | |___________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2014 | /         check!(T::strs(vec![s("x"), s("y"), s("z")]),
[INFO] [stderr] 2015 | |                T::strs(vec![s("x"), s("y"), s("z")]);
[INFO] [stderr] 2016 | |                T::strs(vec![s("x"), s("y"), s("z")]));
[INFO] [stderr]      | |______________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2019 |           check!(T::table(), T::table(); T::table());
[INFO] [stderr]      |           ------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2020 |           check!(T::table(), T::array(just(T::Integer)); T::table());
[INFO] [stderr]      |           ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2021 |           check!(T::array(var(T::Integer)), T::table(); T::table());
[INFO] [stderr]      |           ---------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2022 |           check!(T::table(), T::array(cnst(T::Integer)); T::table());
[INFO] [stderr]      |           ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2023 | /         check!(T::array(just(T::Integer)), T::array(just(T::Integer));
[INFO] [stderr] 2024 | |                T::array(just(T::Integer)));
[INFO] [stderr]      | |___________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2025 | /         check!(T::array(var(T::Integer)), T::array(var(T::Integer));
[INFO] [stderr] 2026 | |                T::array(var(T::Integer)));
[INFO] [stderr]      | |__________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2027 | /         check!(T::array(cnst(T::Integer)), T::array(cnst(T::Integer));
[INFO] [stderr] 2028 | |                T::array(cnst(T::Integer)));
[INFO] [stderr]      | |___________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2070 | /         check!(T::map(T::String, just(T::Integer)),
[INFO] [stderr] 2071 | |                T::map(T::String, just(T::Integer));
[INFO] [stderr] 2072 | |                T::map(T::String, just(T::Integer)));
[INFO] [stderr]      | |____________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2095 | /         check!(T::array(just(T::Integer)),
[INFO] [stderr] 2096 | |                T::array(just(T::Integer));
[INFO] [stderr] 2097 | |                T::array(just(T::Integer)));
[INFO] [stderr]      | |___________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2100 |           check!(T::Thread, T::Thread; T::Thread);
[INFO] [stderr]      |           ---------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2101 |           check!(T::UserData, T::UserData; T::UserData);
[INFO] [stderr]      |           ---------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2102 |           check!(T::All, T::UserData; T::All);
[INFO] [stderr]      |           ------------------------------------ in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2103 |           check!(T::Thread, T::Dynamic(Dyn::User); T::Dynamic(Dyn::User));
[INFO] [stderr]      |           ---------------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2106 |           check!(T::True, T::True; T::True);
[INFO] [stderr]      |           ---------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1942:41
[INFO] [stderr]      |
[INFO] [stderr] 1942 |           ($l:expr, $r:expr; $u:expr) => ({
[INFO] [stderr]      |  _________________________________________^
[INFO] [stderr] 1943 | |             let (left, right, eunion, iunion) = check_base!($l, $r; explicit=$u, implicit=$u);
[INFO] [stderr] 1944 | |             if eunion != iunion {
[INFO] [stderr] 1945 | |                 panic!("{:?} | {:?} = explicit {:?}, implicit {:?}",
[INFO] [stderr] ...    |
[INFO] [stderr] 1948 | |             (left, right, eunion)
[INFO] [stderr] 1949 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2107 |           check!(T::False, T::False; T::False);
[INFO] [stderr]      |           ------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1910:63
[INFO] [stderr]      |
[INFO] [stderr] 1910 |           ($l:expr, $r:expr; explicit=_, implicit=$ui:expr) => ({
[INFO] [stderr]      |  _______________________________________________________________^
[INFO] [stderr] 1911 | |             let left = $l;
[INFO] [stderr] 1912 | |             let right = $r;
[INFO] [stderr] 1913 | |             let eunion = check_base!(left, right; [explicit]=_);
[INFO] [stderr] 1914 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1915 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1916 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2108 |           check!(T::True, T::False; explicit=_, implicit=T::Boolean);
[INFO] [stderr]      |           ----------------------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 2 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2109 | /         check!(T::Int(3) | T::String, T::Str(os("wat")) | T::Int(4);
[INFO] [stderr] 2110 | |                explicit = T::ints(vec![3, 4]) | T::String,
[INFO] [stderr] 2111 | |                implicit = T::Integer | T::String);
[INFO] [stderr]      | |__________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` in tuple element 3 that must be used
[INFO] [stderr]     --> src/ty/value.rs:1926:70
[INFO] [stderr]      |
[INFO] [stderr] 1926 |           ($l:expr, $r:expr; explicit=$ue:expr, implicit=$ui:expr) => ({
[INFO] [stderr]      |  ______________________________________________________________________^
[INFO] [stderr] 1927 | |             let left = $l;
[INFO] [stderr] 1928 | |             let right = $r;
[INFO] [stderr] 1929 | |             let eunion = check_base!(left, right; [explicit]=$ue);
[INFO] [stderr] 1930 | |             let iunion = check_base!(left, right; [implicit]=$ui);
[INFO] [stderr] 1931 | |             (left, right, eunion, iunion)
[INFO] [stderr] 1932 | |         });
[INFO] [stderr]      | |_________^
[INFO] [stderr] ...
[INFO] [stderr] 2109 | /         check!(T::Int(3) | T::String, T::Str(os("wat")) | T::Int(4);
[INFO] [stderr] 2110 | |                explicit = T::ints(vec![3, 4]) | T::String,
[INFO] [stderr] 2111 | |                implicit = T::Integer | T::String);
[INFO] [stderr]      | |__________________________________________________- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]      = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.99s
[INFO] running `"docker" "inspect" "08cbee207aa800f1339e9ecf6a0be1f87f98dd3407991b6a56c0578333dc3c7c"`
[INFO] running `"docker" "rm" "-f" "08cbee207aa800f1339e9ecf6a0be1f87f98dd3407991b6a56c0578333dc3c7c"`
[INFO] [stdout] 08cbee207aa800f1339e9ecf6a0be1f87f98dd3407991b6a56c0578333dc3c7c
