File tree Expand file tree Collapse file tree 3 files changed +9
-16
lines changed
compiler/rustc_ty_utils/src Expand file tree Collapse file tree 3 files changed +9
-16
lines changed Original file line number Diff line number Diff line change @@ -436,10 +436,7 @@ fn fn_abi_sanity_check<'tcx>(
436436 ) {
437437 let tcx = cx. tcx ( ) ;
438438
439- if spec_abi == ExternAbi :: Rust
440- || spec_abi == ExternAbi :: RustCall
441- || spec_abi == ExternAbi :: RustCold
442- {
439+ if spec_abi. is_rustic_abi ( ) {
443440 if arg. layout . is_zst ( ) {
444441 // Casting closures to function pointers depends on ZST closure types being
445442 // omitted entirely in the calling convention.
@@ -687,7 +684,7 @@ fn fn_abi_adjust_for_abi<'tcx>(
687684
688685 let tcx = cx. tcx ( ) ;
689686
690- if abi == ExternAbi :: Rust || abi == ExternAbi :: RustCall || abi == ExternAbi :: RustIntrinsic {
687+ if abi. is_rustic_abi ( ) {
691688 fn_abi. adjust_for_rust_abi ( cx, abi) ;
692689
693690 // Look up the deduced parameter attributes for this function, if we have its def ID and
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1+ //@compile-flags: -Clink-dead-code=true --crate-type lib
2+ //@ only-x86_64
3+ // The set of targets this crashed on was really fiddly, because it was deep in our ABI logic.
4+ // Basically we didn't handle all "Rusty" ABIs in a uniform way, so we failed to fix up arguments
5+ // for actually passing through the ABI...
6+ #![ feature( rust_cold_cc) ]
7+ pub extern "rust-cold" fn foo ( _: [ usize ; 3 ] ) { }
You can’t perform that action at this time.
0 commit comments