Change:
<ins> // compile-flags: --emit link fn main() { let a: [i32; 0] = []; match [a[..]] { //~^ ERROR cannot move a value of type `[i32] //~| ERROR cannot move out of type `[i32]`, a non-copy slice [[]] => (), _ => (), } } </ins>

Discussion:
<!-- Thank you for finding an Internal Compiler Error! If possible, try to provide a minimal verifiable example. You can read "Rust Bug Minimization Patterns" for how to create smaller examples. --<!-- If you're using the stable version of the compiler, you should also check if the bug also exists in the beta or nightly versions. --Bug persists in nighly and beta version as well as 1.72 stable. : <!-- Include a backtrace in the code block by setting in your environment. E.g. . --<details<summary<strongBacktrace</strong</summary<pstack backtrace: 0: 0x7ff8045a7c1a - <std::syscommon::backtrace::print::DisplayBacktrace as core::fmt::Display::fmt::hee39371e3afa4cac 1: 0x7ff8045dc60b - core::fmt::write::h784b30e5a150ff2a 2: 0x7ff80459d2e1 - <std::io::IoSliceMut as core::fmt::Debug::fmt::h3f167a4d9752f39a 3: 0x7ff8045a799a - std::syscommon::backtrace::lock::h9a1e39803fc5b76e 4: 0x7ff8045ab2c3 - std::panicking::panichookwithdiskdump::h1e385a540d361b4b 5: 0x7ff8045aae6b - std::panicking::panichookwithdiskdump::h1e385a540d361b4b 6: 0x7fffe741c9d0 - rustcdriverimpl[]::icepath 7: 0x7ff8045abc7e - std::panicking::rustpanicwithhook::h002d10abbdeacf8c 8: 0x7ff8045ab99a - <std::panicking::beginpanichandler::StrPanicPayload as core::panic::BoxMeUp::get::h591fe4f43155d48c 9: 0x7ff8045a88d9 - <std::syscommon::backtrace::print::DisplayBacktrace as

core::fmt::Display::fmt::hee39371e3afa4cac 10: 0x7ff8045ab6e0 - rustbeginunwind 11: 0x7ff804611895 - core::panicking::panicfmt::hbce22f0544c0bed4 12: 0x7ff804611942 - core::panicking::panic::h1ba68580d5d60f4d 13: 0x7fffe5ea62e5 - <rustcmirtransform[]::elaborateboxderefs::ElaborateBoxDerefVisitor as rustcmiddle[]::mir::visit::MutVisitor::visitplace 14: 0x7fffe5eae3b6 - <rustcmirtransform[]::elaborateboxderefs::ElaborateBoxDerefVisitor as rustcmiddle[]::mir::visit::MutVisitor::visitplace 15: 0x7fffe684bd18 - <rustcmirtransform[]::removezsts::Replacer as rustcmiddle[]::mir::visit::MutVisitor::visitoperand 16: 0x7fffe67f7c07 - <rustcmirtransform[]::constproplint::ConstPropagator as rustcmiddle[]::mir::visit::Visitor::visitbasicblockdata 17: 0x7fffe67f66bf - <rustcmirtransform[]::constproplint::ConstProp as rustcmirtransform[]::passmanager::MirLint::runlint 18: 0x7fffe678b2a6 - <rustcmirtransform[]::simplifycomparisonintegral::SimplifyComparisonIntegral as rustcmiddle[]::mir::MirPass::runpass 19: 0x7fffe6d98acf - <rustcqueryimpl[]::plumbing::QueryCtxt as rustcquerysystem[]::query::QueryContext::loadsideeffects 20: 0x7fffe6dde3cf - <rustcqueryimpl[]::plumbing::QueryCtxt as rustcquerysystem[]::query::QueryContext::loadsideeffects 21: 0x7fffe6e5d362 - <rustcqueryimpl[]::plumbing::QueryCtxt as rustcquerysystem[]::query::QueryContext::loadsideeffects 22:

0x7fffe6135f32 - rustcqueryimpl[]::profilingsupport::allocselfprofilequerystrings 23: 0x7fffe64bc29f - oncecell[]::imp::initializeorwait 24: 0x7fffe365a850 - rustcinterface[]::passes::analysis 25: 0x7fffe6094add - rustcqueryimpl[]::profilingsupport::allocselfprofilequerystrings 26: 0x7fffe605b1e9 - <windowssys[]::Windows::Win32::System::Diagnostics::Debug::MINIDUMPHEADER as core[]::clone::Clone::clone 27: 0x7fffe60c4865 - rustcqueryimpl[]::profilingsupport::allocselfprofilequerystrings 28: 0x7fffe60e3cc7 - rustcqueryimpl[]::profilingsupport::allocselfprofilequerystrings 29: 0x7fffe613361c - rustcqueryimpl[]::profilingsupport::allocselfprofilequerystrings 30: 0x7fffe361cb41 - rustcdriverimpl[]::args::argexpandall 31: 0x7fffe3626b13 - rustcdriverimpl[]::args::argexpandall 32: 0x7fffe363c895 - <rustcmiddle[]::ty::SymbolName as core[]::fmt::Display::fmt 33: 0x7fffe363d696 - <rustcmiddle[]::ty::SymbolName as core[]::fmt::Display::fmt 34: 0x7ff8045bee9c - std::sys::windows::thread::Thread::new::h9f737b48628a624d 35: 0x7ff86b517614 - BaseThreadInitThunk 36: 0x7ff86c8626b1 - RtlUserThreadStart </p</details
This is a compile error (1.70) -error + ice (1.71) regression
Regression in nightly-2023-05-04 found 7 bors merge commits in the specified range commit[0] 2023-05-02: Auto merge of - compiler-errors:attr-query-no-caching,

r=cjgillot commit[1] 2023-05-02: Auto merge of - fortanix:raoul/bugfixlibtestjsonsynchronization, r=pietroalbini commit[2] 2023-05-03: Auto merge of - nnethercote:restrict-From-for-Diagnostics, r=davidtwco commit[3] 2023-05-03: Auto merge of - weihanglo:update-cargo, r=weihanglo commit[4] 2023-05-03: Auto merge of - jdno:reduce-builder-sizes, r=pietroalbini commit[5] 2023-05-03: Auto merge of - cuviper:ct-ng-1.25, r=pietroalbini commit[6] 2023-05-03: Auto merge of - Dylan-DPC:rollup-0pq0hh3, r=Dylan-DPC validated commits found, specifying toolchains checking the start range to verify it passes installing rust-std-nightly-x8664-unknown-linux-gnu: 30.04 MB / 30.04 MB [=========================] 100.00 % 4.88 MB/s testing. RESULT: , ===Yes
WG-prioritization assigning priority (). label -I-prioritize +P-medium