| unsafe fn pointer(v: usize, w: u32) {} | |
| pub trait UniformScalar {} | |
| impl UniformScalar for u32 {} | |
| pub trait GlUniformScalar: UniformScalar { | |
| const FACTORY: unsafe fn(usize, Self) -> (); | |
| } | |
| impl GlUniformScalar for u32 { | |
| const FACTORY: unsafe fn(usize, Self) -> () = pointer; | |
| } | |
| pub fn foo<T: UniformScalar>(value: T) { | |
| <T as GlUniformScalar>::FACTORY(1, value); | |
| //~^ ERROR the trait bound `T: GlUniformScalar` is not satisfied | |
| } | |
| fn main() {} |