]> git.lizzy.rs Git - rust.git/commit
Call poly_project_and_unify_type on types that contain inference types
authorAaron Hill <aa1ronham@gmail.com>
Sat, 15 Dec 2018 02:02:33 +0000 (21:02 -0500)
committerAaron Hill <aa1ronham@gmail.com>
Sat, 15 Dec 2018 02:33:25 +0000 (21:33 -0500)
commita375410e1f8f95f13ed096ff937bf3c64f2ff905
treeb07bb829df7dfdc7d7dd21a5680c620d0e14b4ea
parent96d1334e567237b1507cd277938e7ae2de75ff51
Call poly_project_and_unify_type on types that contain inference types

Commit f57247c48cb59 (Ensure that Rusdoc discovers all necessary auto
trait bounds) added a check to ensure that we only attempt to unify a
projection predicatre with inference variables. However, the check it
added was too strict - instead of checking that a type *contains* an
inference variable (e.g. '&_', 'MyType<_>'), it required the type to
*be* an inference variable (i.e. only '_' would match).

This commit relaxes the check to use 'ty.has_infer_types', ensuring that
we perform unification wherever possible.

Fixes #56822
src/librustc/traits/auto_trait.rs
src/test/rustdoc/issue-56822.rs [new file with mode: 0644]