about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-08-24 07:00:44 -0700
committerAlex Crichton <alex@alexcrichton.com>2017-08-25 16:08:35 -0700
commit82bad957c0314bb841757d8260f0f7f8f5050c57 (patch)
treef3067d5d837bf0c18a688f58146de07e841a2b15
parentecb29c11bbcfac40218b6b35e9ccf26b4a7db151 (diff)
downloadrust-82bad957c0314bb841757d8260f0f7f8f5050c57.tar.gz
rust-82bad957c0314bb841757d8260f0f7f8f5050c57.zip
rustc: Add a FIXME for `try_get` in MIR inlining
It sounds like this is being handled elsewhere, so for now just preserve the
existing behavior of ignoring th error.
-rw-r--r--src/librustc_mir/transform/inline.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/librustc_mir/transform/inline.rs b/src/librustc_mir/transform/inline.rs
index 28aedc8d674..53b46dd2683 100644
--- a/src/librustc_mir/transform/inline.rs
+++ b/src/librustc_mir/transform/inline.rs
@@ -115,8 +115,13 @@ impl<'a, 'tcx> Inliner<'a, 'tcx> {
                     Ok(ref callee_mir) if self.should_inline(callsite, callee_mir) => {
                         callee_mir.subst(self.tcx, callsite.substs)
                     }
+                    Ok(_) => continue,
 
-                    _ => continue,
+                    Err(mut bug) => {
+                        // FIXME(#43542) shouldn't have to cancel an error
+                        bug.cancel();
+                        continue
+                    }
                 };
 
                 let start = caller_mir.basic_blocks().len();