blob: 16911fd522f8ef6c4d638a09119d95bea478e8f9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
//@ known-bug: #122710
use std::marker::PhantomData;
pub trait BarTrait<T> {
fn bar(self, _: T);
}
impl<T, F: Fn(T)> BarTrait<T> for F {
fn bar(self, _: T) { }
}
impl<T: for<'a> MyTrait<'a>> BarTrait<T> for () {
fn bar(self, _: T) { }
}
pub trait MyTrait<'a> { }
impl<'a> MyTrait<'a> for PhantomData<&'a ()> { }
fn foo() {
().bar(PhantomData);
}
pub fn main() {}
|