1 #![feature(type_alias_impl_trait, const_generics)]
2 #![allow(incomplete_features)]
8 type OneTy<T> = impl Debug;
9 type OneLifetime<'a> = impl Debug;
10 type OneConst<const X: usize> = impl Debug;
12 // Not defining uses, because they doesn't define *all* possible generics.
14 fn concrete_ty() -> OneTy<u32> {
15 //~^ ERROR non-defining opaque type use in defining scope
19 fn concrete_lifetime() -> OneLifetime<'static> {
20 //~^ ERROR non-defining opaque type use in defining scope
24 fn concrete_const() -> OneConst<{123}> {
25 //~^ ERROR non-defining opaque type use in defining scope