2022-10-09 17:56:40 +04:00
|
|
|
struct S<'a>(&'a u8);
|
|
|
|
|
fn foo() {}
|
|
|
|
|
|
|
|
|
|
// Paren generic args in AnonConst
|
2024-05-28 11:38:30 +00:00
|
|
|
fn a() -> [u8; foo()] {
|
|
|
|
|
//~^ ERROR mismatched types
|
2022-10-09 17:56:40 +04:00
|
|
|
panic!()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Paren generic args in ConstGeneric
|
|
|
|
|
fn b<const C: u8()>() {}
|
|
|
|
|
//~^ ERROR parenthesized type parameters may only be used with a `Fn` trait
|
|
|
|
|
|
|
|
|
|
// Paren generic args in AnonymousReportError
|
|
|
|
|
fn c<T = u8()>() {}
|
|
|
|
|
//~^ ERROR parenthesized type parameters may only be used with a `Fn` trait
|
|
|
|
|
//~| ERROR defaults for type parameters are only allowed in
|
|
|
|
|
//~| WARN this was previously accepted
|
|
|
|
|
|
|
|
|
|
// Elided lifetime in path in ConstGeneric
|
|
|
|
|
fn d<const C: S>() {}
|
|
|
|
|
//~^ ERROR missing lifetime specifier
|
|
|
|
|
|
2023-03-16 23:17:56 +08:00
|
|
|
trait Foo<'a> {}
|
|
|
|
|
struct Bar<const N: &'a (dyn for<'a> Foo<'a>)>;
|
2023-05-05 21:42:51 +01:00
|
|
|
//~^ ERROR the type of const parameters must not depend on other generic parameters
|
2023-03-16 23:17:56 +08:00
|
|
|
|
2022-10-09 17:56:40 +04:00
|
|
|
fn main() {}
|