2024-02-16 14:02:50 -06:00
|
|
|
//@ run-pass
|
2021-08-27 11:04:57 -05:00
|
|
|
#![feature(generic_const_exprs)]
|
2021-02-23 17:35:48 -06:00
|
|
|
#![allow(incomplete_features)]
|
|
|
|
|
2022-10-23 17:32:40 -05:00
|
|
|
// This tests that the inhabited check doesn't cause
|
2021-02-23 17:35:48 -06:00
|
|
|
// ICEs by trying to evaluate `T::ASSOC` with an incorrect `ParamEnv`.
|
|
|
|
|
|
|
|
trait Foo {
|
|
|
|
const ASSOC: usize = 1;
|
|
|
|
}
|
|
|
|
|
2023-12-27 16:11:58 -06:00
|
|
|
#[allow(dead_code)]
|
2021-02-23 17:35:48 -06:00
|
|
|
struct Iced<T: Foo>(T, [(); T::ASSOC])
|
|
|
|
where
|
|
|
|
[(); T::ASSOC]: ;
|
|
|
|
|
|
|
|
impl Foo for u32 {}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let _iced: Iced<u32> = return;
|
|
|
|
}
|