aboutsummaryrefslogtreecommitdiff
path: root/embassy-sync/tests/ui/sync_impl/lazy_lock_function.rs
blob: 35f5587c0808c8137fd8a9a655c338b2f8fe4284 (plain)
1
2
3
4
5
6
7
8
9
10
11
use embassy_sync::lazy_lock::LazyLock;

fn main() {
    let x = 128u8;
    let x_ptr: *const u8 = core::ptr::addr_of!(x);
    let closure_capturing_non_sync_variable = || unsafe { core::ptr::read(x_ptr) };

    check_sync(LazyLock::new(closure_capturing_non_sync_variable));
}

fn check_sync<T: Sync>(_lazy_lock: T) {}