blob: 76c56a715d2a4a0640314595b7f39e248874184c [file] [log] [blame]
fn main() {
type Predicate = fn<'a>(&'a str) -> bool;
//~^ ERROR function pointer types may not have generic parameters
type Identity = fn<T>(T) -> T;
//~^ ERROR function pointer types may not have generic parameters
//~| ERROR cannot find type `T` in this scope
//~| ERROR cannot find type `T` in this scope
let _: fn<const N: usize, 'e, Q, 'f>();
//~^ ERROR function pointer types may not have generic parameters
let _: for<'outer> fn<'inner>();
//~^ ERROR function pointer types may not have generic parameters
let _: for<> fn<'r>();
//~^ ERROR function pointer types may not have generic parameters
type Hmm = fn<>();
//~^ ERROR function pointer types may not have generic parameters
let _: extern fn<'a: 'static>();
//~^ ERROR function pointer types may not have generic parameters
//~| ERROR bounds cannot be used in this context
let _: for<'any> extern "C" fn<'u>();
//~^ ERROR function pointer types may not have generic parameters
type QuiteBroken = fn<const>();
//~^ ERROR expected identifier, found `>`
}