//@ compile-flags: -C no-prepopulate-passes | |
#![crate_type = "lib"] | |
#![feature(ffi_pure)] | |
pub fn bar() { unsafe { foo() } } | |
extern "C" { | |
// CHECK-LABEL: declare{{.*}}void @foo() | |
// CHECK-SAME: [[ATTRS:#[0-9]+]] | |
// The attribute changed from `readonly` to `memory(read)` with LLVM 16.0. | |
// CHECK-DAG: attributes [[ATTRS]] = { {{.*}}{{readonly|memory\(read\)}}{{.*}} } | |
#[ffi_pure] pub fn foo(); | |
} |