]> git.lizzy.rs Git - rust.git/commit
Immediately register new opaque types in the global list.
authorOli Scherer <github35764891676564198441@oli-obk.de>
Wed, 28 Jul 2021 18:59:25 +0000 (18:59 +0000)
committerOli Scherer <github35764891676564198441@oli-obk.de>
Fri, 6 Aug 2021 10:39:08 +0000 (10:39 +0000)
commit20371b94f62daa33c876adafeea266f9e8b8f222
tree6744e33dc15832f0b7f55bf193af76efeeaa2f5b
parent816b9fc2d1d002824908c37ed043125c3031128d
Immediately register new opaque types in the global list.

Previously each opaque type instantiation would create new inference vars, even for the same opaque type/substs combination. Now there is a global map in InferCtxt that gets filled whenever we encounter an opaque type.
compiler/rustc_mir/src/borrow_check/type_check/mod.rs
compiler/rustc_trait_selection/src/opaque_types.rs
compiler/rustc_typeck/src/check/_match.rs
compiler/rustc_typeck/src/check/check.rs
compiler/rustc_typeck/src/check/fn_ctxt/_impl.rs
src/test/ui/type-alias-impl-trait/issue-63279.rs
src/test/ui/type-alias-impl-trait/issue-63279.stderr
src/test/ui/type-alias-impl-trait/issue-74280.rs
src/test/ui/type-alias-impl-trait/issue-74280.stderr