[INFO] crate kailua_types 1.1.0 is already in cache [INFO] extracting crate kailua_types 1.1.0 into work/ex/pr-60466/sources/master#7840a0b753a065a41999f1fb6028f67d33e3fdd5/reg/kailua_types/1.1.0 [INFO] extracting crate kailua_types 1.1.0 into work/ex/pr-60466/sources/try#6a9f0b6cc40687e25f9d772e3b10bab335c63853/reg/kailua_types/1.1.0 [INFO] validating manifest of kailua_types-1.1.0 on toolchain master#7840a0b753a065a41999f1fb6028f67d33e3fdd5 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+7840a0b753a065a41999f1fb6028f67d33e3fdd5-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of kailua_types-1.1.0 on toolchain try#6a9f0b6cc40687e25f9d772e3b10bab335c63853 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+6a9f0b6cc40687e25f9d772e3b10bab335c63853-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing kailua_types-1.1.0 [INFO] removed path dependency kailua_diag from kailua_types-1.1.0 [INFO] removed path dependency kailua_env from kailua_types-1.1.0 [INFO] removed path dependency kailua_syntax from kailua_types-1.1.0 [INFO] finished frobbing kailua_types-1.1.0 [INFO] frobbed toml for kailua_types-1.1.0 written to work/ex/pr-60466/sources/master#7840a0b753a065a41999f1fb6028f67d33e3fdd5/reg/kailua_types/1.1.0/Cargo.toml [INFO] started frobbing kailua_types-1.1.0 [INFO] removed path dependency kailua_diag from kailua_types-1.1.0 [INFO] removed path dependency kailua_env from kailua_types-1.1.0 [INFO] removed path dependency kailua_syntax from kailua_types-1.1.0 [INFO] finished frobbing kailua_types-1.1.0 [INFO] frobbed toml for kailua_types-1.1.0 written to work/ex/pr-60466/sources/try#6a9f0b6cc40687e25f9d772e3b10bab335c63853/reg/kailua_types/1.1.0/Cargo.toml [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+7840a0b753a065a41999f1fb6028f67d33e3fdd5-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+6a9f0b6cc40687e25f9d772e3b10bab335c63853-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+7840a0b753a065a41999f1fb6028f67d33e3fdd5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+6a9f0b6cc40687e25f9d772e3b10bab335c63853-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking kailua_types-1.1.0 against try#6a9f0b6cc40687e25f9d772e3b10bab335c63853 for pr-60466 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60466/worker-4/try#6a9f0b6cc40687e25f9d772e3b10bab335c63853:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60466/sources/try#6a9f0b6cc40687e25f9d772e3b10bab335c63853/reg/kailua_types/1.1.0:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+6a9f0b6cc40687e25f9d772e3b10bab335c63853-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] fdc144a39d6e412f3b12fc3b2a3fa937b091b4b376f54fe3430435754b966642 [INFO] running `"docker" "start" "-a" "fdc144a39d6e412f3b12fc3b2a3fa937b091b4b376f54fe3430435754b966642"` [INFO] [stderr] Checking parse-generics-shim v0.1.1 [INFO] [stderr] Checking kailua_env v1.0.4 [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/crater/workdir) [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> { [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> 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> 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(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 { [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 { [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 { [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, resolv: &mut TypeResolver) -> Result { [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 { [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 { [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>> { [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 { [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 { [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, 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, 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, resolv: &mut TypeResolver) -> Result { [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 { [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 { [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 { [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] 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] 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] 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 { [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 { [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>, 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] 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] 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] 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] 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] 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] 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] 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> { [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; [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 { [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, 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, 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 { [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, 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, 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, [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) -> 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: 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> { [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> 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> 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(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 { [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 { [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 { [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, resolv: &mut TypeResolver) -> Result { [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 { [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 { [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>> { [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 { [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 { [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, 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, 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, resolv: &mut TypeResolver) -> Result { [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 { [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 { [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 { [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] 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] 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] 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 { [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 { [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>, 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] 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] 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] 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] 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] 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] 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] 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> { [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; [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 { [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, 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, 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 { [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, 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, 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, [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) -> 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] Finished dev [unoptimized + debuginfo] target(s) in 11.96s [INFO] running `"docker" "inspect" "fdc144a39d6e412f3b12fc3b2a3fa937b091b4b376f54fe3430435754b966642"` [INFO] running `"docker" "rm" "-f" "fdc144a39d6e412f3b12fc3b2a3fa937b091b4b376f54fe3430435754b966642"` [INFO] [stdout] fdc144a39d6e412f3b12fc3b2a3fa937b091b4b376f54fe3430435754b966642