2021-06-11 06:22:13 -05:00
|
|
|
// gate-test-abi_vectorcall
|
|
|
|
//@ needs-llvm-components: x86
|
|
|
|
//@ compile-flags: --target=i686-pc-windows-msvc --crate-type=rlib
|
|
|
|
#![no_core]
|
|
|
|
#![feature(no_core, lang_items)]
|
|
|
|
#[lang="sized"]
|
|
|
|
trait Sized { }
|
|
|
|
|
2022-12-23 01:50:05 -06:00
|
|
|
// Test that the "vectorcall" ABI is feature-gated, and cannot be used when
|
|
|
|
// the `vectorcall` feature gate is not used.
|
2021-06-11 06:22:13 -05:00
|
|
|
|
|
|
|
extern "vectorcall" fn f() {} //~ ERROR vectorcall is experimental
|
|
|
|
|
|
|
|
trait T {
|
|
|
|
extern "vectorcall" fn m(); //~ ERROR vectorcall is experimental
|
|
|
|
|
|
|
|
extern "vectorcall" fn dm() {} //~ ERROR vectorcall is experimental
|
|
|
|
}
|
|
|
|
|
|
|
|
struct S;
|
|
|
|
impl T for S {
|
|
|
|
extern "vectorcall" fn m() {} //~ ERROR vectorcall is experimental
|
|
|
|
}
|
|
|
|
|
|
|
|
impl S {
|
|
|
|
extern "vectorcall" fn im() {} //~ ERROR vectorcall is experimental
|
|
|
|
}
|
|
|
|
|
|
|
|
type TA = extern "vectorcall" fn(); //~ ERROR vectorcall is experimental
|
|
|
|
|
|
|
|
extern "vectorcall" {} //~ ERROR vectorcall is experimental
|