Skip to content

&mut [T;N] as *mut T does not compile, but &[T;N] as *const T does #24151

@jagourq

Description

@jagourq
unsafe { let my_num: &[i32; 2] = &[10, 20]; let my_num: *const i32 = my_num as *const i32; // This works. println!("{}", *my_num.offset(1)); }
unsafe { let my_num: &mut [i32; 2] = &mut [10, 20]; // error: mismatched types: // expected `*mut i32`, // found `&mut [i32; 2]` let my_num: *mut i32 = my_num as *mut i32; println!("{}", *my_num.offset(1)); }

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-type-systemArea: Type systemC-bugCategory: This is a bug.P-lowLow priority

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions