summaryrefslogtreecommitdiffstats
path: root/src/test/ui/closures/local-type-mix.rs
blob: 006e6f490f06b14bb3b5c1a271754fcc8bb77595 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Check that using the parameter name in its type does not ICE.
// edition:2018

#![feature(async_closure)]

fn main() {
    let _ = |x: x| x; //~ ERROR expected type
    let _ = |x: bool| -> x { x }; //~ ERROR expected type
    let _ = async move |x: x| x; //~ ERROR expected type
    let _ = async move |x: bool| -> x { x }; //~ ERROR expected type
}

fn foo(x: x) {} //~ ERROR expected type
fn foo_ret(x: bool) -> x {} //~ ERROR expected type

async fn async_foo(x: x) {} //~ ERROR expected type
async fn async_foo_ret(x: bool) -> x {} //~ ERROR expected type