2021-08-27 11:04:57 -05:00
|
|
|
#![feature(generic_const_exprs)]
|
2020-09-09 02:43:53 -05:00
|
|
|
#![allow(incomplete_features)]
|
|
|
|
|
2021-08-27 11:04:57 -05:00
|
|
|
// This test would tries to unify `N` with `N + 1` which must fail the occurs check.
|
2020-09-09 02:43:53 -05:00
|
|
|
|
|
|
|
fn bind<const N: usize>(value: [u8; N]) -> [u8; N + 1] {
|
|
|
|
todo!()
|
|
|
|
}
|
|
|
|
|
|
|
|
fn sink(_: [u8; 5]) {}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let mut arr = Default::default();
|
2021-08-27 11:04:57 -05:00
|
|
|
arr = bind(arr); //~ ERROR mismatched types
|
2020-09-09 02:43:53 -05:00
|
|
|
sink(arr);
|
|
|
|
}
|