How does Rust solve the ambiguities with const generics?
fn function<T, { ambigous const generic expression }>(arg1: T) -> T {