summaryrefslogtreecommitdiffstats
path: root/tests/ui/async-await/in-trait/missing-feature-flag.rs
blob: 6481f4a70595ff6675fc0c86e3f48f07096bcbe2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// edition:2018
// [next] compile-flags: -Zlower-impl-trait-in-trait-to-assoc-ty
// revisions: current next

#![feature(async_fn_in_trait)]
#![feature(min_specialization)]

struct MyStruct;

trait MyTrait<T> {
    async fn foo(_: T) -> &'static str;
}

impl<T> MyTrait<T> for MyStruct {}
//~^ ERROR: not all trait items implemented, missing: `foo` [E0046]

impl MyTrait<i32> for MyStruct {
    async fn foo(_: i32) -> &'static str {}
    //~^ ERROR: `foo` specializes an item from a parent `impl`, but that item is not marked `default` [E0520]
    //~| ERROR: mismatched types [E0308]
}

fn main() {}