about summary refs log tree commit diff
path: root/tests/ui/coherence/coherence-orphan.rs
blob: 665fa15c56e53f19d102519b08cc89e0f55def10 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//@ aux-build:coherence_orphan_lib.rs
#![feature(negative_impls)]

extern crate coherence_orphan_lib as lib;

use lib::TheTrait;

struct TheType;

impl TheTrait<usize> for isize {}
//~^ ERROR  only traits defined in the current crate can be implemented for primitive types

impl TheTrait<TheType> for isize {}

impl TheTrait<isize> for TheType {}

impl !Send for Vec<isize> {}
//~^ ERROR only traits defined in the current crate can be implemented for types defined outside of the crate

fn main() {}