-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Open
Labels
A-mirA-tytype system / type inference / traits / method resolutiontype system / type inference / traits / method resolutionC-bugCategory: bugCategory: bug
Description
https://doc.rust-lang.org/std/ptr/fn.null_mut.html is defined as:
pub const fn null_mut<T: ?Sized + Thin>() -> *mut T;
where Thin
is defined as:
pub trait Thin = Pointee<Metadata = ()>;
r-a currently does not handle trait aliases correctly, as such mir eval bails out on almost all code that does Vec
allocations via Vec::with_capacity
because we lack the knowledge that Metadata = ()
in null_mut
resulting in a Expected <T as Pointee>::Metadata, found ()
error.
gmoshkin
Metadata
Metadata
Assignees
Labels
A-mirA-tytype system / type inference / traits / method resolutiontype system / type inference / traits / method resolutionC-bugCategory: bugCategory: bug