blob: 785d3aa5018caf19e6f9334d523fa456163c7ede (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// check-pass
#![feature(generic_const_items, associated_const_equality)]
#![allow(incomplete_features)]
trait Owner {
const C<const N: u32>: u32;
const K<const N: u32>: u32;
}
impl Owner for () {
const C<const N: u32>: u32 = N;
const K<const N: u32>: u32 = N + 1;
}
fn take0<const N: u32>(_: impl Owner<C<N> = { N }>) {}
fn take1(_: impl Owner<K<99> = 100>) {}
fn main() {
take0::<128>(());
take1(());
}
|