rust/tests/ui/const-generics/mgca/ambiguous-assoc-const.rs
Noah Lev 177e7ff548 mgca: Lower all const paths as ConstArgKind::Path
When `#![feature(min_generic_const_args)]` is enabled, we now lower all
const paths in generic arg position to `hir::ConstArgKind::Path`. We
then lower assoc const paths to `ty::ConstKind::Unevaluated` since we
can no longer use the anon const expression lowering machinery. In the
process of implementing this, I factored out `hir_ty_lowering` code that
is now shared between lowering assoc types and assoc consts.

This PR also introduces a `#[type_const]` attribute for trait assoc
consts that are allowed as const args. However, we still need to
implement code to check that assoc const definitions satisfy
`#[type_const]` if present (basically is it a const path or a
monomorphic anon const).
2025-03-04 10:11:13 -05:00

16 lines
236 B
Rust

#![feature(min_generic_const_args)]
#![expect(incomplete_features)]
trait Tr {
const N: usize;
}
struct Blah<const N: usize>;
fn foo() -> Blah<{ Tr::N }> {
//~^ ERROR ambiguous associated constant
todo!()
}
fn main() {}