diff --git a/src/librustc_trans/back/lto.rs b/src/librustc_trans/back/lto.rs index 48c3fd638c3..aa7754a7ab0 100644 --- a/src/librustc_trans/back/lto.rs +++ b/src/librustc_trans/back/lto.rs @@ -613,7 +613,10 @@ impl ThinModule { self.data().len(), self.shared.module_names[self.idx].as_ptr(), ); - assert!(!llmod.is_null()); + if llmod.is_null() { + let msg = format!("failed to parse bitcode for thin LTO module"); + return Err(write::llvm_err(&diag_handler, msg)); + } let mtrans = ModuleTranslation { source: ModuleSource::Translated(ModuleLlvm { llmod,