//@ only-x86_64 // Set the base cpu explicitly, in case the default has been changed. //@ compile-flags: -C target-cpu=x86-64 -C target-feature=+ssse3 //@ check-pass #![crate_type = "lib"] // ok (ssse3 enabled at compile time) const A: () = unsafe { ssse3_fn() }; // error (avx2 not enabled at compile time) const B: () = unsafe { avx2_fn() }; // FIXME: currently we do not detect this UB, since we don't want the result of const-eval // to depend on `tcx.sess` which can differ between crates in a crate graph. #[target_feature(enable = "ssse3")] const unsafe fn ssse3_fn() {} #[target_feature(enable = "avx2")] const unsafe fn avx2_fn() {}