diff options
| -rw-r--r-- | compiler/rustc_codegen_cranelift/src/abi/mod.rs | 7 | ||||
| -rw-r--r-- | compiler/rustc_codegen_ssa/src/mir/block.rs | 11 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/instance.rs | 17 | ||||
| -rw-r--r-- | compiler/rustc_monomorphize/src/collector.rs | 14 | ||||
| -rw-r--r-- | src/test/ui/borrowck/issue-29166.rs (renamed from src/test/ui/issues/issue-29166.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/borrowck/issue-51301.rs (renamed from src/test/ui/issues/issue-51301.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/borrowck/issue-51301.stderr (renamed from src/test/ui/issues/issue-51301.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/drop/issue-21486.rs (renamed from src/test/ui/issues/issue-21486.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/hygiene/issue-15221.rs (renamed from src/test/ui/issues/issue-15221.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/imports/issue-26930.rs (renamed from src/test/ui/issues/issue-26930.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/issues/issue-5353.rs | 18 | ||||
| -rw-r--r-- | src/test/ui/macros/issue-42954.fixed (renamed from src/test/ui/issues/issue-42954.fixed) | 0 | ||||
| -rw-r--r-- | src/test/ui/macros/issue-42954.rs (renamed from src/test/ui/issues/issue-42954.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/macros/issue-42954.stderr (renamed from src/test/ui/issues/issue-42954.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/macros/issue-51848.rs (renamed from src/test/ui/issues/issue-51848.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/macros/issue-51848.stderr (renamed from src/test/ui/issues/issue-51848.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/mir/issue-29227.rs (renamed from src/test/ui/issues/issue-29227.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/mir/issue-46845.rs (renamed from src/test/ui/issues/issue-46845.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/mir/issue-77002.rs (renamed from src/test/ui/issues/issue-77002.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-39616.rs (renamed from src/test/ui/issues/issue-39616.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-39616.stderr (renamed from src/test/ui/issues/issue-39616.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-49257.rs (renamed from src/test/ui/issues/issue-49257.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-49257.stderr (renamed from src/test/ui/issues/issue-49257.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/auxiliary/issue-11225-1.rs (renamed from src/test/ui/issues/auxiliary/issue-11225-1.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/auxiliary/issue-11225-2.rs (renamed from src/test/ui/issues/auxiliary/issue-11225-2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/auxiliary/issue-11225-3.rs (renamed from src/test/ui/issues/auxiliary/issue-11225-3.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/issue-11225-1.rs (renamed from src/test/ui/issues/issue-11225-1.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/issue-11225-2.rs (renamed from src/test/ui/issues/issue-11225-2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/reachable/issue-11225-3.rs (renamed from src/test/ui/issues/issue-11225-3.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/stdlib-unit-tests/issue-21058.rs (renamed from src/test/ui/issues/issue-21058.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/traits/issue-38404.rs (renamed from src/test/ui/issues/issue-38404.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/traits/issue-38404.stderr (renamed from src/test/ui/issues/issue-38404.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/traits/issue-50480.rs (renamed from src/test/ui/issues/issue-50480.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/traits/issue-50480.stderr (renamed from src/test/ui/issues/issue-50480.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/type-alias/issue-37515.rs (renamed from src/test/ui/issues/issue-37515.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/type-alias/issue-37515.stderr (renamed from src/test/ui/issues/issue-37515.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/typeck/issue-33575.rs (renamed from src/test/ui/issues/issue-33575.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/typeck/issue-33575.stderr (renamed from src/test/ui/issues/issue-33575.stderr) | 0 | ||||
| -rw-r--r-- | src/tools/tidy/src/ui_tests.rs | 2 |
39 files changed, 35 insertions, 34 deletions
diff --git a/compiler/rustc_codegen_cranelift/src/abi/mod.rs b/compiler/rustc_codegen_cranelift/src/abi/mod.rs index 1e22537c2ba..98b5fb1cce2 100644 --- a/compiler/rustc_codegen_cranelift/src/abi/mod.rs +++ b/compiler/rustc_codegen_cranelift/src/abi/mod.rs @@ -349,10 +349,9 @@ pub(crate) fn codegen_terminator_call<'tcx>( // Handle special calls like intrinsics and empty drop glue. let instance = if let ty::FnDef(def_id, substs) = *fn_ty.kind() { - let instance = ty::Instance::resolve(fx.tcx, ty::ParamEnv::reveal_all(), def_id, substs) - .unwrap() - .unwrap() - .polymorphize(fx.tcx); + let instance = + ty::Instance::expect_resolve(fx.tcx, ty::ParamEnv::reveal_all(), def_id, substs) + .polymorphize(fx.tcx); if fx.tcx.symbol_name(instance).name.starts_with("llvm.") { crate::intrinsics::codegen_llvm_intrinsic_call( diff --git a/compiler/rustc_codegen_ssa/src/mir/block.rs b/compiler/rustc_codegen_ssa/src/mir/block.rs index f3f5ddb52d6..831956cb2be 100644 --- a/compiler/rustc_codegen_ssa/src/mir/block.rs +++ b/compiler/rustc_codegen_ssa/src/mir/block.rs @@ -751,10 +751,13 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> { let (instance, mut llfn) = match *callee.layout.ty.kind() { ty::FnDef(def_id, substs) => ( Some( - ty::Instance::resolve(bx.tcx(), ty::ParamEnv::reveal_all(), def_id, substs) - .unwrap() - .unwrap() - .polymorphize(bx.tcx()), + ty::Instance::expect_resolve( + bx.tcx(), + ty::ParamEnv::reveal_all(), + def_id, + substs, + ) + .polymorphize(bx.tcx()), ), None, ), diff --git a/compiler/rustc_middle/src/ty/instance.rs b/compiler/rustc_middle/src/ty/instance.rs index 586460986dd..35d369ffc89 100644 --- a/compiler/rustc_middle/src/ty/instance.rs +++ b/compiler/rustc_middle/src/ty/instance.rs @@ -385,6 +385,21 @@ impl<'tcx> Instance<'tcx> { ) } + pub fn expect_resolve( + tcx: TyCtxt<'tcx>, + param_env: ty::ParamEnv<'tcx>, + def_id: DefId, + substs: SubstsRef<'tcx>, + ) -> Instance<'tcx> { + match ty::Instance::resolve(tcx, param_env, def_id, substs) { + Ok(Some(instance)) => instance, + _ => bug!( + "failed to resolve instance for {}", + tcx.def_path_str_with_substs(def_id, substs) + ), + } + } + // This should be kept up to date with `resolve`. pub fn resolve_opt_const_arg( tcx: TyCtxt<'tcx>, @@ -525,7 +540,7 @@ impl<'tcx> Instance<'tcx> { pub fn resolve_drop_in_place(tcx: TyCtxt<'tcx>, ty: Ty<'tcx>) -> ty::Instance<'tcx> { let def_id = tcx.require_lang_item(LangItem::DropInPlace, None); let substs = tcx.intern_substs(&[ty.into()]); - Instance::resolve(tcx, ty::ParamEnv::reveal_all(), def_id, substs).unwrap().unwrap() + Instance::expect_resolve(tcx, ty::ParamEnv::reveal_all(), def_id, substs) } #[instrument(level = "debug", skip(tcx), ret)] diff --git a/compiler/rustc_monomorphize/src/collector.rs b/compiler/rustc_monomorphize/src/collector.rs index cf7226a129c..10ea4d29cfe 100644 --- a/compiler/rustc_monomorphize/src/collector.rs +++ b/compiler/rustc_monomorphize/src/collector.rs @@ -931,10 +931,13 @@ fn visit_fn_use<'tcx>( ) { if let ty::FnDef(def_id, substs) = *ty.kind() { let instance = if is_direct_call { - ty::Instance::resolve(tcx, ty::ParamEnv::reveal_all(), def_id, substs).unwrap().unwrap() + ty::Instance::expect_resolve(tcx, ty::ParamEnv::reveal_all(), def_id, substs) } else { - ty::Instance::resolve_for_fn_ptr(tcx, ty::ParamEnv::reveal_all(), def_id, substs) - .unwrap() + match ty::Instance::resolve_for_fn_ptr(tcx, ty::ParamEnv::reveal_all(), def_id, substs) + { + Some(instance) => instance, + _ => bug!("failed to resolve instance for {ty}"), + } }; visit_instance_use(tcx, instance, is_direct_call, source, output); } @@ -1369,9 +1372,8 @@ fn create_mono_items_for_default_impls<'tcx>( trait_ref.substs[param.index as usize] } }); - let instance = ty::Instance::resolve(tcx, param_env, method.def_id, substs) - .unwrap() - .unwrap(); + let instance = + ty::Instance::expect_resolve(tcx, param_env, method.def_id, substs); let mono_item = create_fn_mono_item(tcx, instance, DUMMY_SP); if mono_item.node.is_instantiable(tcx) && should_codegen_locally(tcx, &instance) diff --git a/src/test/ui/issues/issue-29166.rs b/src/test/ui/borrowck/issue-29166.rs index ca819ba39a2..ca819ba39a2 100644 --- a/src/test/ui/issues/issue-29166.rs +++ b/src/test/ui/borrowck/issue-29166.rs diff --git a/src/test/ui/issues/issue-51301.rs b/src/test/ui/borrowck/issue-51301.rs index 7e0a5190fcd..7e0a5190fcd 100644 --- a/src/test/ui/issues/issue-51301.rs +++ b/src/test/ui/borrowck/issue-51301.rs diff --git a/src/test/ui/issues/issue-51301.stderr b/src/test/ui/borrowck/issue-51301.stderr index f3decf7a991..f3decf7a991 100644 --- a/src/test/ui/issues/issue-51301.stderr +++ b/src/test/ui/borrowck/issue-51301.stderr diff --git a/src/test/ui/issues/issue-21486.rs b/src/test/ui/drop/issue-21486.rs index 46d6ccd56bd..46d6ccd56bd 100644 --- a/src/test/ui/issues/issue-21486.rs +++ b/src/test/ui/drop/issue-21486.rs diff --git a/src/test/ui/issues/issue-15221.rs b/src/test/ui/hygiene/issue-15221.rs index 4b8319a8304..4b8319a8304 100644 --- a/src/test/ui/issues/issue-15221.rs +++ b/src/test/ui/hygiene/issue-15221.rs diff --git a/src/test/ui/issues/issue-26930.rs b/src/test/ui/imports/issue-26930.rs index 707e71b1124..707e71b1124 100644 --- a/src/test/ui/issues/issue-26930.rs +++ b/src/test/ui/imports/issue-26930.rs diff --git a/src/test/ui/issues/issue-5353.rs b/src/test/ui/issues/issue-5353.rs deleted file mode 100644 index 1d6813d5a39..00000000000 --- a/src/test/ui/issues/issue-5353.rs +++ /dev/null @@ -1,18 +0,0 @@ -// check-pass -#![allow(dead_code)] -// pretty-expanded FIXME #23616 - -const INVALID_ENUM : u32 = 0; -const INVALID_VALUE : u32 = 1; - -fn gl_err_str(err: u32) -> String -{ - match err - { - INVALID_ENUM => { "Invalid enum".to_string() }, - INVALID_VALUE => { "Invalid value".to_string() }, - _ => { "Unknown error".to_string() } - } -} - -pub fn main() {} diff --git a/src/test/ui/issues/issue-42954.fixed b/src/test/ui/macros/issue-42954.fixed index a73054c9257..a73054c9257 100644 --- a/src/test/ui/issues/issue-42954.fixed +++ b/src/test/ui/macros/issue-42954.fixed diff --git a/src/test/ui/issues/issue-42954.rs b/src/test/ui/macros/issue-42954.rs index 5f9b0e31da5..5f9b0e31da5 100644 --- a/src/test/ui/issues/issue-42954.rs +++ b/src/test/ui/macros/issue-42954.rs diff --git a/src/test/ui/issues/issue-42954.stderr b/src/test/ui/macros/issue-42954.stderr index 396a91994eb..396a91994eb 100644 --- a/src/test/ui/issues/issue-42954.stderr +++ b/src/test/ui/macros/issue-42954.stderr diff --git a/src/test/ui/issues/issue-51848.rs b/src/test/ui/macros/issue-51848.rs index 4792bdd64f0..4792bdd64f0 100644 --- a/src/test/ui/issues/issue-51848.rs +++ b/src/test/ui/macros/issue-51848.rs diff --git a/src/test/ui/issues/issue-51848.stderr b/src/test/ui/macros/issue-51848.stderr index c25bedf37b7..c25bedf37b7 100644 --- a/src/test/ui/issues/issue-51848.stderr +++ b/src/test/ui/macros/issue-51848.stderr diff --git a/src/test/ui/issues/issue-29227.rs b/src/test/ui/mir/issue-29227.rs index e9dfc2840e5..e9dfc2840e5 100644 --- a/src/test/ui/issues/issue-29227.rs +++ b/src/test/ui/mir/issue-29227.rs diff --git a/src/test/ui/issues/issue-46845.rs b/src/test/ui/mir/issue-46845.rs index fc85b25519a..fc85b25519a 100644 --- a/src/test/ui/issues/issue-46845.rs +++ b/src/test/ui/mir/issue-46845.rs diff --git a/src/test/ui/issues/issue-77002.rs b/src/test/ui/mir/issue-77002.rs index 0c37346eaf8..0c37346eaf8 100644 --- a/src/test/ui/issues/issue-77002.rs +++ b/src/test/ui/mir/issue-77002.rs diff --git a/src/test/ui/issues/issue-39616.rs b/src/test/ui/parser/issue-39616.rs index 46b5aa334ca..46b5aa334ca 100644 --- a/src/test/ui/issues/issue-39616.rs +++ b/src/test/ui/parser/issue-39616.rs diff --git a/src/test/ui/issues/issue-39616.stderr b/src/test/ui/parser/issue-39616.stderr index 393d1f2e2ce..393d1f2e2ce 100644 --- a/src/test/ui/issues/issue-39616.stderr +++ b/src/test/ui/parser/issue-39616.stderr diff --git a/src/test/ui/issues/issue-49257.rs b/src/test/ui/parser/issue-49257.rs index a7fa19d52fd..a7fa19d52fd 100644 --- a/src/test/ui/issues/issue-49257.rs +++ b/src/test/ui/parser/issue-49257.rs diff --git a/src/test/ui/issues/issue-49257.stderr b/src/test/ui/parser/issue-49257.stderr index 846467f7f22..846467f7f22 100644 --- a/src/test/ui/issues/issue-49257.stderr +++ b/src/test/ui/parser/issue-49257.stderr diff --git a/src/test/ui/issues/auxiliary/issue-11225-1.rs b/src/test/ui/reachable/auxiliary/issue-11225-1.rs index 2c6f899a0f4..2c6f899a0f4 100644 --- a/src/test/ui/issues/auxiliary/issue-11225-1.rs +++ b/src/test/ui/reachable/auxiliary/issue-11225-1.rs diff --git a/src/test/ui/issues/auxiliary/issue-11225-2.rs b/src/test/ui/reachable/auxiliary/issue-11225-2.rs index 4381f0a4edf..4381f0a4edf 100644 --- a/src/test/ui/issues/auxiliary/issue-11225-2.rs +++ b/src/test/ui/reachable/auxiliary/issue-11225-2.rs diff --git a/src/test/ui/issues/auxiliary/issue-11225-3.rs b/src/test/ui/reachable/auxiliary/issue-11225-3.rs index 266e42a10b5..266e42a10b5 100644 --- a/src/test/ui/issues/auxiliary/issue-11225-3.rs +++ b/src/test/ui/reachable/auxiliary/issue-11225-3.rs diff --git a/src/test/ui/issues/issue-11225-1.rs b/src/test/ui/reachable/issue-11225-1.rs index d1f2ea5e7de..d1f2ea5e7de 100644 --- a/src/test/ui/issues/issue-11225-1.rs +++ b/src/test/ui/reachable/issue-11225-1.rs diff --git a/src/test/ui/issues/issue-11225-2.rs b/src/test/ui/reachable/issue-11225-2.rs index d41c75443f1..d41c75443f1 100644 --- a/src/test/ui/issues/issue-11225-2.rs +++ b/src/test/ui/reachable/issue-11225-2.rs diff --git a/src/test/ui/issues/issue-11225-3.rs b/src/test/ui/reachable/issue-11225-3.rs index e69496baa26..e69496baa26 100644 --- a/src/test/ui/issues/issue-11225-3.rs +++ b/src/test/ui/reachable/issue-11225-3.rs diff --git a/src/test/ui/issues/issue-21058.rs b/src/test/ui/stdlib-unit-tests/issue-21058.rs index 6facf0b2dd5..6facf0b2dd5 100644 --- a/src/test/ui/issues/issue-21058.rs +++ b/src/test/ui/stdlib-unit-tests/issue-21058.rs diff --git a/src/test/ui/issues/issue-38404.rs b/src/test/ui/traits/issue-38404.rs index 1a92acc3404..1a92acc3404 100644 --- a/src/test/ui/issues/issue-38404.rs +++ b/src/test/ui/traits/issue-38404.rs diff --git a/src/test/ui/issues/issue-38404.stderr b/src/test/ui/traits/issue-38404.stderr index d7721d7e69c..d7721d7e69c 100644 --- a/src/test/ui/issues/issue-38404.stderr +++ b/src/test/ui/traits/issue-38404.stderr diff --git a/src/test/ui/issues/issue-50480.rs b/src/test/ui/traits/issue-50480.rs index 10597caf5b2..10597caf5b2 100644 --- a/src/test/ui/issues/issue-50480.rs +++ b/src/test/ui/traits/issue-50480.rs diff --git a/src/test/ui/issues/issue-50480.stderr b/src/test/ui/traits/issue-50480.stderr index 0bb1f9ae035..0bb1f9ae035 100644 --- a/src/test/ui/issues/issue-50480.stderr +++ b/src/test/ui/traits/issue-50480.stderr diff --git a/src/test/ui/issues/issue-37515.rs b/src/test/ui/type-alias/issue-37515.rs index b3a870d505a..b3a870d505a 100644 --- a/src/test/ui/issues/issue-37515.rs +++ b/src/test/ui/type-alias/issue-37515.rs diff --git a/src/test/ui/issues/issue-37515.stderr b/src/test/ui/type-alias/issue-37515.stderr index f1e83ca74d8..f1e83ca74d8 100644 --- a/src/test/ui/issues/issue-37515.stderr +++ b/src/test/ui/type-alias/issue-37515.stderr diff --git a/src/test/ui/issues/issue-33575.rs b/src/test/ui/typeck/issue-33575.rs index de544afae73..de544afae73 100644 --- a/src/test/ui/issues/issue-33575.rs +++ b/src/test/ui/typeck/issue-33575.rs diff --git a/src/test/ui/issues/issue-33575.stderr b/src/test/ui/typeck/issue-33575.stderr index bbd8042d1cd..bbd8042d1cd 100644 --- a/src/test/ui/issues/issue-33575.stderr +++ b/src/test/ui/typeck/issue-33575.stderr diff --git a/src/tools/tidy/src/ui_tests.rs b/src/tools/tidy/src/ui_tests.rs index ee326e190ff..19e2528bb24 100644 --- a/src/tools/tidy/src/ui_tests.rs +++ b/src/tools/tidy/src/ui_tests.rs @@ -10,7 +10,7 @@ use std::path::Path; const ENTRY_LIMIT: usize = 1000; // FIXME: The following limits should be reduced eventually. const ROOT_ENTRY_LIMIT: usize = 939; -const ISSUES_ENTRY_LIMIT: usize = 2070; +const ISSUES_ENTRY_LIMIT: usize = 2040; fn check_entries(path: &Path, bad: &mut bool) { for dir in Walk::new(&path.join("test/ui")) { |
