about summary refs log tree commit diff
path: root/tests/ui/attributes/fn-align-dyn.rs
blob: 91e2dab65a3cc1f9205a94b6f879663a2e178f45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//@ run-pass
//@ ignore-wasm32 aligning functions is not currently supported on wasm (#143368)
//@ ignore-backends: gcc

// FIXME(#82232, #143834): temporarily renamed to mitigate `#[align]` nameres ambiguity
#![feature(rustc_attrs)]
#![feature(fn_align)]

trait Test {
    #[rustc_align(4096)]
    fn foo(&self);

    #[rustc_align(4096)]
    fn foo1(&self);
}

fn main() {
    assert_eq!((<dyn Test>::foo as fn(_) as usize & !1) % 4096, 0);
    assert_eq!((<dyn Test>::foo1 as fn(_) as usize & !1) % 4096, 0);
}