rust/tests/ui/const-generics/inhabited-assoc-ty-ice-1.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

29 lines
470 B
Rust
Raw Normal View History

2021-02-23 23:35:48 +00:00
//@ run-pass
#![feature(generic_const_exprs)]
2021-02-23 23:35:48 +00:00
#![allow(incomplete_features)]
// This tests that the inhabited check doesn't cause
2021-02-23 23:35:48 +00:00
// ICEs by trying to evaluate `T::ASSOC` with an incorrect `ParamEnv`.
trait Foo {
const ASSOC: usize = 1;
}
#[allow(dead_code)]
2021-02-23 23:35:48 +00:00
struct Iced<T: Foo>(T, [(); T::ASSOC])
where
[(); T::ASSOC]: ;
impl Foo for u32 {}
fn foo<T: Foo>()
where
[(); T::ASSOC]: ,
{
let _iced: Iced<T> = return;
}
fn main() {
foo::<u32>();
}