blob: b02435509cc070bfd57efeda9d9aaac44841be56 [file] [log] [blame] [edit]
//@ aux-build: no-mangle-associated-fn.rs
//@ run-pass
extern crate no_mangle_associated_fn;
struct Foo;
impl Foo {
#[no_mangle]
fn foo() -> u8 {
1
}
}
trait Bar { //~ WARN trait `Bar` is never used
fn qux() -> u8;
}
impl Bar for Foo {
#[no_mangle]
fn qux() -> u8 {
4
}
}
fn main() {
extern "Rust" {
fn foo() -> u8;
fn bar() -> u8;
fn baz() -> u8;
fn qux() -> u8;
}
assert_eq!(unsafe { foo() }, 1);
assert_eq!(unsafe { bar() }, 2);
assert_eq!(unsafe { baz() }, 3);
assert_eq!(unsafe { qux() }, 4);
}