]> git.lizzy.rs Git - rust.git/blobdiff - src/librustc/infer/combine.rs
Fix Rustdoc ICE when checking blanket impls
[rust.git] / src / librustc / infer / combine.rs
index de8f57ee796661446670dad90ec2804b6663e0f3..0ee03bc4c6e00902d0026a78e23b8be1c63a0a5d 100644 (file)
@@ -251,6 +251,7 @@ fn generalize(&self,
                   dir: RelationDir)
                   -> RelateResult<'tcx, Generalization<'tcx>>
     {
+        debug!("generalize(ty={:?}, for_vid={:?}, dir={:?}", ty, for_vid, dir);
         // Determine the ambient variance within which `ty` appears.
         // The surrounding equation is:
         //
@@ -273,8 +274,15 @@ fn generalize(&self,
             root_ty: ty,
         };
 
-        let ty = generalize.relate(&ty, &ty)?;
+        let ty = match generalize.relate(&ty, &ty) {
+            Ok(ty) => ty,
+            Err(e) => {
+                debug!("generalize: failure {:?}", e);
+                return Err(e);
+            }
+        };
         let needs_wf = generalize.needs_wf;
+        debug!("generalize: success {{ {:?}, {:?} }}", ty, needs_wf);
         Ok(Generalization { ty, needs_wf })
     }
 }