summaryrefslogtreecommitdiffstats
path: root/tests/ui/builtin-superkinds/builtin-superkinds-in-metadata2.rs
blob: cdde48871ea905378c242c14a02202a3c929eb5b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// run-pass

#![allow(unused_imports)]

// aux-build:trait_superkinds_in_metadata.rs

// Tests (correct) usage of trait super-builtin-kinds cross-crate.

extern crate trait_superkinds_in_metadata;
use trait_superkinds_in_metadata::{RequiresRequiresShareAndSend, RequiresShare};
use trait_superkinds_in_metadata::RequiresCopy;
use std::marker;

#[derive(Copy, Clone)]
struct X<T>(#[allow(unused_tuple_struct_fields)] T);

impl<T:Sync> RequiresShare for X<T> { }

impl<T:Sync+Send> RequiresRequiresShareAndSend for X<T> { }

impl<T:Copy> RequiresCopy for X<T> { }

pub fn main() { }