summaryrefslogtreecommitdiffstats
path: root/tests/ui/error-codes/e0119/issue-23563.rs
blob: f578560c552a87f18cf470be61672d1f333b434b (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
25
26
27
28
29
// aux-build:issue-23563-a.rs

// Ref: https://github.com/rust-lang/rust/issues/23563#issuecomment-260751672

extern crate issue_23563_a as a;

use a::LolFrom;
use a::LolInto;
use a::LolTo;

struct LocalType<T>(Option<T>);

impl<'a, T> LolFrom<&'a [T]> for LocalType<T> { //~ ERROR conflicting implementations of trait
    fn from(_: &'a [T]) -> LocalType<T> { LocalType(None) }
}

impl<T> LolInto<LocalType<T>> for LocalType<T> {
    fn convert_into(self) -> LocalType<T> {
        self
    }
}

impl LolTo<LocalType<u8>> for [u8] {
    fn convert_to(&self) -> LocalType<u8> {
        LocalType(None)
    }
}

fn main() {}