rollup merge of #20607: nrc/kinds
Conflicts: src/libcore/array.rs src/libcore/cell.rs src/libcore/prelude.rs src/libstd/path/posix.rs src/libstd/prelude/v1.rs src/test/compile-fail/dst-sized-trait-param.rs
This commit is contained in:
commit
771fe9026a
156 changed files with 580 additions and 554 deletions
|
|
@ -14,7 +14,7 @@ trait Get {
|
|||
}
|
||||
|
||||
fn foo<T:Get>(t: T) {
|
||||
let x = t.get(); //~ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let x = t.get(); //~ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
fn main() {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
// except according to those terms.
|
||||
|
||||
fn foo<T:'static>() {
|
||||
1u.bar::<T>(); //~ ERROR `core::kinds::Send` is not implemented
|
||||
1u.bar::<T>(); //~ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
trait bar {
|
||||
|
|
|
|||
|
|
@ -16,8 +16,8 @@ trait Trait {}
|
|||
|
||||
pub fn main() {
|
||||
let x: Vec<Trait + Sized> = Vec::new();
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//~^^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
let x: Vec<Box<RefCell<Trait + Sized>>> = Vec::new();
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// Ensure that moves out of static items is forbidden
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo {
|
||||
foo: int,
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
// move, when the struct implements Drop.
|
||||
|
||||
// NoCopy
|
||||
use std::kinds::marker::NoCopy as NP;
|
||||
use std::marker::NoCopy as NP;
|
||||
|
||||
|
||||
struct S { a: int, np: NP }
|
||||
|
|
|
|||
|
|
@ -13,9 +13,9 @@
|
|||
|
||||
trait Foo : Send+Sync { }
|
||||
|
||||
impl <T: Sync+'static> Foo for (T,) { } //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
impl <T: Sync+'static> Foo for (T,) { } //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
|
||||
impl <T: Send> Foo for (T,T) { } //~ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
impl <T: Send> Foo for (T,T) { } //~ ERROR the trait `core::marker::Sync` is not implemented
|
||||
|
||||
impl <T: Send+Sync> Foo for (T,T,T) { } // (ok)
|
||||
|
||||
|
|
|
|||
|
|
@ -22,6 +22,6 @@ struct X<T>(T);
|
|||
impl <T:Sync> RequiresShare for X<T> { }
|
||||
|
||||
impl <T:Sync+'static> RequiresRequiresShareAndSend for X<T> { }
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -12,6 +12,6 @@
|
|||
|
||||
trait Foo : Send { }
|
||||
|
||||
impl <T: Sync+'static> Foo for T { } //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
impl <T: Sync+'static> Foo for T { } //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// Verifies all possible restrictions for statics values.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct WithDtor;
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ struct X<F> where F: FnOnce() + 'static + Send {
|
|||
}
|
||||
|
||||
fn foo<F>(blk: F) -> X<F> where F: FnOnce() + 'static {
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented for the type
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented for the type
|
||||
return X { field: blk };
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ fn give_any<F>(f: F) where F: FnOnce() {
|
|||
|
||||
fn give_owned<F>(f: F) where F: FnOnce() + Send {
|
||||
take_any(f);
|
||||
take_const_owned(f); //~ ERROR the trait `core::kinds::Sync` is not implemented for the type
|
||||
take_const_owned(f); //~ ERROR the trait `core::marker::Sync` is not implemented for the type
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
|
|
|
|||
|
|
@ -13,5 +13,5 @@ use std::sync::mpsc::Receiver;
|
|||
fn test<T: Sync>() {}
|
||||
|
||||
fn main() {
|
||||
test::<Receiver<int>>(); //~ ERROR: `core::kinds::Sync` is not implemented
|
||||
test::<Receiver<int>>(); //~ ERROR: `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,5 +13,5 @@ use std::sync::mpsc::Sender;
|
|||
fn test<T: Sync>() {}
|
||||
|
||||
fn main() {
|
||||
test::<Sender<int>>(); //~ ERROR: `core::kinds::Sync` is not implemented
|
||||
test::<Sender<int>>(); //~ ERROR: `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,5 +43,5 @@ pub fn main() {
|
|||
let f5: &mut Fat<ToBar> = &mut Fat { f1: 5, f2: "some str", ptr: Bar1 {f :42} };
|
||||
let z: Box<ToBar> = box Bar1 {f: 36};
|
||||
f5.ptr = *z;
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,5 +43,5 @@ pub fn main() {
|
|||
let f5: &mut Fat<ToBar> = &mut Fat { f1: 5, f2: "some str", ptr: Bar1 {f :42} };
|
||||
let z: Box<ToBar> = box Bar1 {f: 36};
|
||||
f5.ptr = Bar1 {f: 36}; //~ ERROR mismatched types: expected `ToBar`, found `Bar1`
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented for the type `ToBar`
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented for the type `ToBar`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,5 +21,5 @@ pub fn main() {
|
|||
let f: Fat<[int; 3]> = Fat { ptr: [5i, 6, 7] };
|
||||
let g: &Fat<[int]> = &f;
|
||||
let h: &Fat<Fat<[int]>> = &Fat { ptr: *g };
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,22 +15,22 @@ impl Foo for str {}
|
|||
|
||||
fn test1<T: ?Sized + Foo>(t: &T) {
|
||||
let u: &Foo = t;
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `T`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `T`
|
||||
}
|
||||
|
||||
fn test2<T: ?Sized + Foo>(t: &T) {
|
||||
let v: &Foo = t as &Foo;
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `T`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `T`
|
||||
}
|
||||
|
||||
fn test3() {
|
||||
let _: &[&Foo] = &["hi"];
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `str`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `str`
|
||||
}
|
||||
|
||||
fn test4() {
|
||||
let _: &Foo = "hi" as &Foo;
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `str`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `str`
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -14,10 +14,10 @@
|
|||
|
||||
trait Foo<T> : Sized { fn take(self, x: &T) { } } // Note: T is sized
|
||||
|
||||
impl Foo<[isize]> for uint { }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented for the type `[isize]`
|
||||
impl Foo<[isize]> for usize { }
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented for the type `[isize]`
|
||||
|
||||
impl Foo<isize> for [usize] { }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented for the type `[usize]`
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented for the type `[usize]`
|
||||
|
||||
pub fn main() { }
|
||||
|
|
|
|||
|
|
@ -13,5 +13,5 @@
|
|||
fn check_bound<T:Copy>(_: T) {}
|
||||
|
||||
fn main() {
|
||||
check_bound("nocopy".to_string()); //~ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
check_bound("nocopy".to_string()); //~ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,5 +10,5 @@
|
|||
|
||||
fn main() {
|
||||
let _x = "test" as &::std::any::Any;
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented for the type `str`
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented for the type `str`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ fn dft_iter<'a, T>(arg1: Chunks<'a,T>, arg2: ChunksMut<'a,T>)
|
|||
{
|
||||
for
|
||||
&something
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented for the type `[T]`
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented for the type `[T]`
|
||||
in arg2
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,6 @@ mod Y {
|
|||
|
||||
static foo: *const Y::X = Y::foo(Y::x as *const Y::X);
|
||||
//~^ ERROR cannot refer to other statics by value
|
||||
//~| ERROR: the trait `core::kinds::Sync` is not implemented for the type
|
||||
//~| ERROR: the trait `core::marker::Sync` is not implemented for the type
|
||||
|
||||
fn main() {}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo { nc: marker::NoCopy }
|
||||
const INIT: Foo = Foo { nc: marker::NoCopy };
|
||||
|
|
|
|||
|
|
@ -8,12 +8,12 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo { marker: marker::NoSync }
|
||||
|
||||
static FOO: uint = 3;
|
||||
static BAR: Foo = Foo { marker: marker::NoSync };
|
||||
//~^ ERROR: the trait `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR: the trait `core::marker::Sync` is not implemented
|
||||
|
||||
fn main() {}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ pub trait AbstractRenderer {}
|
|||
|
||||
fn _create_render(_: &()) ->
|
||||
AbstractRenderer
|
||||
//~^ ERROR: the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR: the trait `core::marker::Sized` is not implemented
|
||||
{
|
||||
match 0u {
|
||||
_ => unimplemented!()
|
||||
|
|
|
|||
|
|
@ -18,13 +18,13 @@ trait To {
|
|||
// This is a typo, the return type should be `<Dst as From<Self>>::Output`
|
||||
fn to<Dst: From<Self>>(
|
||||
self
|
||||
//~^ error: the trait `core::kinds::Sized` is not implemented
|
||||
//~^ error: the trait `core::marker::Sized` is not implemented
|
||||
) ->
|
||||
<Dst as From<Self>>::Dst
|
||||
//~^ error: the trait `core::kinds::Sized` is not implemented
|
||||
//~^ error: the trait `core::marker::Sized` is not implemented
|
||||
{
|
||||
From::from(
|
||||
//~^ error: the trait `core::kinds::Sized` is not implemented
|
||||
//~^ error: the trait `core::marker::Sized` is not implemented
|
||||
self
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,9 +16,9 @@ trait From<Src> {
|
|||
|
||||
trait To {
|
||||
fn to<Dst>(
|
||||
self //~ error: the trait `core::kinds::Sized` is not implemented
|
||||
self //~ error: the trait `core::marker::Sized` is not implemented
|
||||
) -> <Dst as From<Self>>::Result where Dst: From<Self> {
|
||||
From::from( //~ error: the trait `core::kinds::Sized` is not implemented
|
||||
From::from( //~ error: the trait `core::marker::Sized` is not implemented
|
||||
self
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,6 +17,6 @@ struct S {
|
|||
name: int
|
||||
}
|
||||
|
||||
fn bar(_x: Foo) {} //~ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
fn bar(_x: Foo) {} //~ ERROR the trait `core::marker::Sized` is not implemented
|
||||
|
||||
fn main() {}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,6 @@
|
|||
trait I {}
|
||||
type K = I+'static;
|
||||
|
||||
fn foo(_x: K) {} //~ ERROR: the trait `core::kinds::Sized` is not implemented
|
||||
fn foo(_x: K) {} //~ ERROR: the trait `core::marker::Sized` is not implemented
|
||||
|
||||
fn main() {}
|
||||
|
|
|
|||
|
|
@ -14,5 +14,5 @@ impl Foo for u8 {}
|
|||
fn main() {
|
||||
let r: Box<Foo> = box 5;
|
||||
let _m: Box<Foo> = r as Box<Foo>;
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `Foo`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `Foo`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@ struct Struct {
|
|||
}
|
||||
|
||||
fn new_struct(r: A+'static)
|
||||
-> Struct { //~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
-> Struct { //~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
Struct { r: r }
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,6 +32,6 @@ struct A {
|
|||
|
||||
fn main() {
|
||||
let a = A {v: box B{v: None} as Box<Foo+Send>};
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ use std::cell::RefCell;
|
|||
// Regresion test for issue 7364
|
||||
static boxed: Box<RefCell<int>> = box RefCell::new(0);
|
||||
//~^ ERROR statics are not allowed to have custom pointers
|
||||
//~| ERROR: the trait `core::kinds::Sync` is not implemented for the type
|
||||
//~| ERROR: the trait `core::kinds::Sync` is not implemented for the type
|
||||
//~| ERROR: the trait `core::marker::Sync` is not implemented for the type
|
||||
//~| ERROR: the trait `core::marker::Sync` is not implemented for the type
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -36,14 +36,14 @@ fn test<'a,T,U:Copy>(_: &'a int) {
|
|||
assert_copy::<&'a [int]>();
|
||||
|
||||
// ...unless they are mutable
|
||||
assert_copy::<&'static mut int>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<&'a mut int>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<&'static mut int>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
assert_copy::<&'a mut int>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
|
||||
// ~ pointers are not ok
|
||||
assert_copy::<Box<int>>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<String>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Vec<int> >(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Box<&'a mut int>>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Box<int>>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
assert_copy::<String>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
assert_copy::<Vec<int> >(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
assert_copy::<Box<&'a mut int>>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
|
||||
// borrowed object types are generally ok
|
||||
assert_copy::<&'a Dummy>();
|
||||
|
|
@ -51,11 +51,11 @@ fn test<'a,T,U:Copy>(_: &'a int) {
|
|||
assert_copy::<&'static (Dummy+Copy)>();
|
||||
|
||||
// owned object types are not ok
|
||||
assert_copy::<Box<Dummy>>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Box<Dummy+Copy>>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Box<Dummy>>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
assert_copy::<Box<Dummy+Copy>>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
|
||||
// mutable object types are not ok
|
||||
assert_copy::<&'a mut (Dummy+Copy)>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<&'a mut (Dummy+Copy)>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
|
||||
// unsafe ptrs are ok
|
||||
assert_copy::<*const int>();
|
||||
|
|
@ -73,10 +73,10 @@ fn test<'a,T,U:Copy>(_: &'a int) {
|
|||
assert_copy::<MyStruct>();
|
||||
|
||||
// structs containing non-POD are not ok
|
||||
assert_copy::<MyNoncopyStruct>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<MyNoncopyStruct>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
|
||||
// ref counted types are not ok
|
||||
assert_copy::<Rc<int>>(); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
assert_copy::<Rc<int>>(); //~ ERROR `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
pub fn main() {
|
||||
|
|
|
|||
|
|
@ -19,5 +19,5 @@ fn take_param<T:Foo>(foo: &T) { }
|
|||
fn main() {
|
||||
let x = box 3i;
|
||||
take_param(&x);
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,15 +20,15 @@ impl<T: Send + Copy> Gettable<T> for S<T> {}
|
|||
fn f<T>(val: T) {
|
||||
let t: S<T> = S;
|
||||
let a = &t as &Gettable<T>;
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn g<T>(val: T) {
|
||||
let t: S<T> = S;
|
||||
let a: &Gettable<T> = &t;
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
//~^^ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn foo<'a>() {
|
||||
|
|
@ -40,13 +40,13 @@ fn foo<'a>() {
|
|||
fn foo2<'a>() {
|
||||
let t: Box<S<String>> = box S;
|
||||
let a = t as Box<Gettable<String>>;
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn foo3<'a>() {
|
||||
let t: Box<S<String>> = box S;
|
||||
let a: Box<Gettable<String>> = t;
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -22,13 +22,13 @@ fn take_param<T:Foo>(foo: &T) { }
|
|||
|
||||
fn a() {
|
||||
let x = box 3i;
|
||||
take_param(&x); //~ ERROR `core::kinds::Copy` is not implemented
|
||||
take_param(&x); //~ ERROR `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn b() {
|
||||
let x = box 3i;
|
||||
let y = &x;
|
||||
let z = &x as &Foo; //~ ERROR `core::kinds::Copy` is not implemented
|
||||
let z = &x as &Foo; //~ ERROR `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ fn bar<F:FnOnce() + Send>(_: F) { }
|
|||
fn main() {
|
||||
let x = Rc::new(3u);
|
||||
bar(move|| foo(x));
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,11 +20,11 @@ trait Message : Send { }
|
|||
|
||||
fn object_ref_with_static_bound_not_ok() {
|
||||
assert_send::<&'static (Dummy+'static)>();
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
fn box_object_with_no_bound_not_ok<'a>() {
|
||||
assert_send::<Box<Dummy>>(); //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
assert_send::<Box<Dummy>>(); //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
fn object_with_send_bound_ok() {
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ trait Dummy { }
|
|||
// careful with object types, who knows what they close over...
|
||||
fn test51<'a>() {
|
||||
assert_send::<&'a Dummy>();
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
fn test52<'a>() {
|
||||
assert_send::<&'a (Dummy+Send)>();
|
||||
|
|
@ -37,7 +37,7 @@ fn test61() {
|
|||
// them not ok
|
||||
fn test_71<'a>() {
|
||||
assert_send::<Box<Dummy+'a>>();
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -14,11 +14,11 @@ fn assert_send<T:Send>() { }
|
|||
trait Dummy { }
|
||||
|
||||
fn test50() {
|
||||
assert_send::<&'static Dummy>(); //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
assert_send::<&'static Dummy>(); //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
fn test53() {
|
||||
assert_send::<Box<Dummy>>(); //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
assert_send::<Box<Dummy>>(); //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
||||
// ...unless they are properly bounded
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ fn assert_send<T:Send>() { }
|
|||
|
||||
fn test71<'a>() {
|
||||
assert_send::<*mut &'a int>();
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented for the type
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented for the type
|
||||
}
|
||||
|
||||
fn main() {
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ use std::num::Int;
|
|||
struct Foo {
|
||||
x: uint,
|
||||
b: bool, //~ ERROR: struct field is never used
|
||||
marker: std::kinds::marker::NoCopy
|
||||
marker: std::marker::NoCopy
|
||||
}
|
||||
|
||||
fn field_read(f: Foo) -> uint {
|
||||
|
|
@ -59,7 +59,7 @@ fn field_match_in_let(f: Bar) -> bool {
|
|||
}
|
||||
|
||||
fn main() {
|
||||
field_read(Foo { x: 1, b: false, marker: std::kinds::marker::NoCopy });
|
||||
field_read(Foo { x: 1, b: false, marker: std::marker::NoCopy });
|
||||
field_match_in_patterns(XYZ::Z);
|
||||
field_match_in_let(Bar { x: 42u, b: true, _guard: () });
|
||||
let _ = Baz { x: 0 };
|
||||
|
|
|
|||
|
|
@ -8,11 +8,11 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
fn foo<P:Copy>(p: P) { }
|
||||
|
||||
fn main()
|
||||
{
|
||||
foo(marker::NoCopy); //~ ERROR the trait `core::kinds::Copy` is not implemented
|
||||
foo(marker::NoCopy); //~ ERROR the trait `core::marker::Copy` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,11 +8,11 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
fn foo<P:Send>(p: P) { }
|
||||
|
||||
fn main()
|
||||
{
|
||||
foo(marker::NoSend); //~ ERROR the trait `core::kinds::Send` is not implemented
|
||||
foo(marker::NoSend); //~ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,11 +8,11 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
fn foo<P: Sync>(p: P) { }
|
||||
|
||||
fn main()
|
||||
{
|
||||
foo(marker::NoSync); //~ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
foo(marker::NoSync); //~ ERROR the trait `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ fn f<T: Sync>(_: T) {}
|
|||
fn main() {
|
||||
let x = RefCell::new(0i);
|
||||
f(x);
|
||||
//~^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR `core::marker::Sync` is not implemented
|
||||
//~^^ ERROR `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
// Tests that an `&` pointer to something inherently mutable is itself
|
||||
// to be considered mutable.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
enum Foo { A(marker::NoSync) }
|
||||
|
||||
|
|
@ -19,5 +19,5 @@ fn bar<T: Sync>(_: T) {}
|
|||
|
||||
fn main() {
|
||||
let x = Foo::A(marker::NoSync);
|
||||
bar(&x); //~ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
bar(&x); //~ ERROR the trait `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,8 +36,8 @@ fn main() {
|
|||
let x = foo(Port(Rc::new(())));
|
||||
|
||||
Thread::spawn(move|| {
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
let y = x;
|
||||
println!("{:?}", y);
|
||||
});
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
enum Foo {
|
||||
A(marker::NoSend)
|
||||
|
|
@ -19,5 +19,5 @@ fn bar<T: Send>(_: T) {}
|
|||
fn main() {
|
||||
let x = Foo::A(marker::NoSend);
|
||||
bar(x);
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ fn bar<T: Send>(_: T) {}
|
|||
fn main() {
|
||||
let x = Rc::new(5i);
|
||||
bar(x);
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo {
|
||||
a: int,
|
||||
|
|
@ -20,5 +20,5 @@ fn bar<T: Send>(_: T) {}
|
|||
fn main() {
|
||||
let x = Foo { a: 5, ns: marker::NoSend };
|
||||
bar(x);
|
||||
//~^ ERROR the trait `core::kinds::Send` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
enum Foo { A(marker::NoSync) }
|
||||
|
||||
|
|
@ -17,5 +17,5 @@ fn bar<T: Sync>(_: T) {}
|
|||
fn main() {
|
||||
let x = Foo::A(marker::NoSync);
|
||||
bar(x);
|
||||
//~^ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,6 @@ fn bar<T: Sync>(_: T) {}
|
|||
fn main() {
|
||||
let x = Rc::new(RefCell::new(5i));
|
||||
bar(x);
|
||||
//~^ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
//~^^ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sync` is not implemented
|
||||
//~^^ ERROR the trait `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo { a: int, m: marker::NoSync }
|
||||
|
||||
|
|
@ -17,5 +17,5 @@ fn bar<T: Sync>(_: T) {}
|
|||
fn main() {
|
||||
let x = Foo { a: 5, m: marker::NoSync };
|
||||
bar(x);
|
||||
//~^ ERROR the trait `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ impl Copy for IWantToCopyThis {}
|
|||
|
||||
enum CantCopyThisEither {
|
||||
A,
|
||||
B(::std::kinds::marker::NoCopy),
|
||||
B(::std::marker::NoCopy),
|
||||
}
|
||||
|
||||
enum IWantToCopyThisToo {
|
||||
|
|
|
|||
|
|
@ -23,5 +23,5 @@ pub fn main() {
|
|||
// Unsized type.
|
||||
let arr: &[_] = &[1u, 2, 3];
|
||||
let range = (*arr)..;
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
// Note: see variance-regions-*.rs for the tests that check that the
|
||||
// variance inference works in the first place.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
// This is contravariant with respect to 'a, meaning that
|
||||
// Contravariant<'foo> <: Contravariant<'static> because
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
// Note: see variance-regions-*.rs for the tests that check that the
|
||||
// variance inference works in the first place.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Covariant<'a> {
|
||||
marker: marker::CovariantLifetime<'a>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct invariant<'a> {
|
||||
marker: marker::InvariantLifetime<'a>
|
||||
|
|
|
|||
|
|
@ -25,5 +25,5 @@ impl Drop for Foo {
|
|||
fn main() {
|
||||
let a = Foo { x: 3 };
|
||||
let _ = [ a; 5 ];
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented for the type `Foo`
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented for the type `Foo`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
// Verifies that static items can't be moved
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Foo {
|
||||
foo: int,
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::Send;
|
||||
use std::marker::Send;
|
||||
|
||||
struct TestType;
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#![feature(optin_builtin_traits)]
|
||||
|
||||
use std::kinds::Send;
|
||||
use std::marker::Send;
|
||||
|
||||
struct TestType;
|
||||
|
||||
|
|
|
|||
|
|
@ -16,6 +16,6 @@ fn test_send<S: Send>() {}
|
|||
|
||||
pub fn main() {
|
||||
test_send::<rand::ThreadRng>();
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ trait Foo {
|
|||
// This should emit the less confusing error, not the more confusing one.
|
||||
|
||||
fn foo(_x: Foo + Send) {
|
||||
//~^ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
// ignore-tidy-linelength
|
||||
|
||||
use std::cell::UnsafeCell;
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct MySync<T> {
|
||||
u: UnsafeCell<T>
|
||||
|
|
@ -30,17 +30,17 @@ fn test<T: Sync>(s: T){
|
|||
fn main() {
|
||||
let us = UnsafeCell::new(MySync{u: UnsafeCell::new(0i)});
|
||||
test(us);
|
||||
//~^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR `core::marker::Sync` is not implemented
|
||||
|
||||
let uns = UnsafeCell::new(NoSync{m: marker::NoSync});
|
||||
test(uns);
|
||||
//~^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR `core::marker::Sync` is not implemented
|
||||
|
||||
let ms = MySync{u: uns};
|
||||
test(ms);
|
||||
//~^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR `core::marker::Sync` is not implemented
|
||||
|
||||
let ns = NoSync{m: marker::NoSync};
|
||||
test(ns);
|
||||
//~^ ERROR `core::kinds::Sync` is not implemented
|
||||
//~^ ERROR `core::marker::Sync` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
#![feature(unboxed_closures)]
|
||||
#![allow(dead_code)]
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
trait Foo<'a,T,U> {
|
||||
fn dummy(&'a self) -> &'a (T,U);
|
||||
|
|
|
|||
|
|
@ -17,6 +17,6 @@ fn f<T:Send>(_i: T) {
|
|||
fn main() {
|
||||
let i = box Rc::new(100i);
|
||||
f(i);
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ fn foo(i:int, j: Rc<String>) -> foo {
|
|||
fn main() {
|
||||
let cat = "kitty".to_string();
|
||||
let (tx, _) = channel();
|
||||
//~^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^^ ERROR `core::kinds::Send` is not implemented
|
||||
//~^ ERROR `core::marker::Send` is not implemented
|
||||
//~^^ ERROR `core::marker::Send` is not implemented
|
||||
tx.send(foo(42, Rc::new(cat)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,5 +9,5 @@
|
|||
// except according to those terms.
|
||||
|
||||
fn bar<T: Sized>() { }
|
||||
fn foo<T: ?Sized>() { bar::<T>() } //~ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
fn foo<T: ?Sized>() { bar::<T>() } //~ ERROR the trait `core::marker::Sized` is not implemented
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -15,14 +15,14 @@ fn not_sized<T: ?Sized>() { }
|
|||
enum Foo<U> { FooSome(U), FooNone }
|
||||
fn foo1<T>() { not_sized::<Foo<T>>() } // Hunky dory.
|
||||
fn foo2<T: ?Sized>() { not_sized::<Foo<T>>() }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//
|
||||
// Not OK: `T` is not sized.
|
||||
|
||||
enum Bar<U: ?Sized> { BarSome(U), BarNone }
|
||||
fn bar1<T: ?Sized>() { not_sized::<Bar<T>>() }
|
||||
fn bar2<T: ?Sized>() { is_sized::<Bar<T>>() }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//
|
||||
// Not OK: `Bar<T>` is not sized, but it should be.
|
||||
|
||||
|
|
|
|||
|
|
@ -15,14 +15,14 @@ fn not_sized<T: ?Sized>() { }
|
|||
struct Foo<T> { data: T }
|
||||
fn foo1<T>() { not_sized::<Foo<T>>() } // Hunky dory.
|
||||
fn foo2<T: ?Sized>() { not_sized::<Foo<T>>() }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//
|
||||
// Not OK: `T` is not sized.
|
||||
|
||||
struct Bar<T: ?Sized> { data: T }
|
||||
fn bar1<T: ?Sized>() { not_sized::<Bar<T>>() }
|
||||
fn bar2<T: ?Sized>() { is_sized::<Bar<T>>() }
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
//
|
||||
// Not OK: `Bar<T>` is not sized, but it should be.
|
||||
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ trait T2<Z> {
|
|||
}
|
||||
struct S4<Y: ?Sized>;
|
||||
impl<X: ?Sized> T2<X> for S4<X> {
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `X`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `X`
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
// Unbounded.
|
||||
fn f1<X: ?Sized>(x: &X) {
|
||||
f2::<X>(x);
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
fn f2<X>(x: &X) {
|
||||
}
|
||||
|
|
@ -23,7 +23,7 @@ fn f2<X>(x: &X) {
|
|||
trait T {}
|
||||
fn f3<X: ?Sized + T>(x: &X) {
|
||||
f4::<X>(x);
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
fn f4<X: T>(x: &X) {
|
||||
}
|
||||
|
|
@ -37,7 +37,7 @@ fn f5<Y>(x: &Y) {}
|
|||
fn f6<X: ?Sized>(x: &X) {}
|
||||
fn f7<X: ?Sized>(x1: &E<X>, x2: &E<X>) {
|
||||
f5(x1);
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
f6(x2); // ok
|
||||
}
|
||||
|
||||
|
|
@ -49,19 +49,19 @@ struct S<X: ?Sized> {
|
|||
|
||||
fn f8<X: ?Sized>(x1: &S<X>, x2: &S<X>) {
|
||||
f5(x1);
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
f6(x2); // ok
|
||||
}
|
||||
|
||||
// Test some tuples.
|
||||
fn f9<X: ?Sized>(x1: Box<S<X>>, x2: Box<E<X>>) {
|
||||
f5(&(*x1, 34i));
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
fn f10<X: ?Sized>(x1: Box<S<X>>, x2: Box<E<X>>) {
|
||||
f5(&(32i, *x2));
|
||||
//~^ ERROR the trait `core::kinds::Sized` is not implemented
|
||||
//~^ ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
pub fn main() {
|
||||
|
|
|
|||
|
|
@ -8,30 +8,30 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// Test `Sized?` types not allowed in fields (except the last one).
|
||||
// Test `?Sized` types not allowed in fields (except the last one).
|
||||
|
||||
struct S1<X: ?Sized> {
|
||||
f1: X, //~ ERROR `core::kinds::Sized` is not implemented
|
||||
f1: X, //~ ERROR `core::marker::Sized` is not implemented
|
||||
f2: int,
|
||||
}
|
||||
struct S2<X: ?Sized> {
|
||||
f: int,
|
||||
g: X, //~ ERROR `core::kinds::Sized` is not implemented
|
||||
g: X, //~ ERROR `core::marker::Sized` is not implemented
|
||||
h: int,
|
||||
}
|
||||
struct S3 {
|
||||
f: str, //~ ERROR `core::kinds::Sized` is not implemented
|
||||
f: str, //~ ERROR `core::marker::Sized` is not implemented
|
||||
g: [uint]
|
||||
}
|
||||
struct S4 {
|
||||
f: str, //~ ERROR `core::kinds::Sized` is not implemented
|
||||
f: str, //~ ERROR `core::marker::Sized` is not implemented
|
||||
g: uint
|
||||
}
|
||||
enum E<X: ?Sized> {
|
||||
V1(X, int), //~ERROR `core::kinds::Sized` is not implemented
|
||||
V1(X, int), //~ERROR `core::marker::Sized` is not implemented
|
||||
}
|
||||
enum F<X: ?Sized> {
|
||||
V2{f1: X, f: int}, //~ERROR `core::kinds::Sized` is not implemented
|
||||
V2{f1: X, f: int}, //~ERROR `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
pub fn main() {
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
// Test `Sized?` local variables.
|
||||
// Test `?Sized` local variables.
|
||||
|
||||
|
||||
trait T {}
|
||||
|
|
@ -16,27 +16,27 @@ trait T {}
|
|||
fn f1<X: ?Sized>(x: &X) {
|
||||
let _: X; // <-- this is OK, no bindings created, no initializer.
|
||||
let _: (int, (X, int)); // same
|
||||
let y: X; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: (int, (X, int)); //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: X; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let y: (int, (X, int)); //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
fn f2<X: ?Sized + T>(x: &X) {
|
||||
let y: X; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: (int, (X, int)); //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: X; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let y: (int, (X, int)); //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
fn f3<X: ?Sized>(x1: Box<X>, x2: Box<X>, x3: Box<X>) {
|
||||
let y: X = *x1; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y = *x2; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let (y, z) = (*x3, 4i); //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: X = *x1; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let y = *x2; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let (y, z) = (*x3, 4i); //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
fn f4<X: ?Sized + T>(x1: Box<X>, x2: Box<X>, x3: Box<X>) {
|
||||
let y: X = *x1; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y = *x2; //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let (y, z) = (*x3, 4i); //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
let y: X = *x1; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let y = *x2; //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
let (y, z) = (*x3, 4i); //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
}
|
||||
|
||||
fn g1<X: ?Sized>(x: X) {} //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
fn g2<X: ?Sized + T>(x: X) {} //~ERROR the trait `core::kinds::Sized` is not implemented
|
||||
fn g1<X: ?Sized>(x: X) {} //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
fn g2<X: ?Sized + T>(x: X) {} //~ERROR the trait `core::marker::Sized` is not implemented
|
||||
|
||||
pub fn main() {
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ trait T1<Z: T> {
|
|||
}
|
||||
struct S3<Y: ?Sized>;
|
||||
impl<X: ?Sized + T> T1<X> for S3<X> {
|
||||
//~^ ERROR `core::kinds::Sized` is not implemented for the type `X`
|
||||
//~^ ERROR `core::marker::Sized` is not implemented for the type `X`
|
||||
}
|
||||
|
||||
fn main() { }
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ impl<T> Foo<T> {
|
|||
|
||||
fn fails_copy(self) {
|
||||
require_copy(self.x);
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented for the type `T`
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented for the type `T`
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ impl<T> Foo<T> for Bar<T> {
|
|||
|
||||
fn fails_copy(self) {
|
||||
require_copy(self.x);
|
||||
//~^ ERROR the trait `core::kinds::Copy` is not implemented for the type `T`
|
||||
//~^ ERROR the trait `core::marker::Copy` is not implemented for the type `T`
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
#![feature(lang_items, unboxed_closures)]
|
||||
#![no_implicit_prelude]
|
||||
|
||||
use std::kinds::Sized;
|
||||
use std::marker::Sized;
|
||||
use std::option::Option::{None, Some, self};
|
||||
|
||||
trait Iterator {
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
#![feature(lang_items, unboxed_closures)]
|
||||
#![no_implicit_prelude]
|
||||
|
||||
use std::kinds::Sized;
|
||||
use std::marker::Sized;
|
||||
use std::option::Option::{None, Some, self};
|
||||
|
||||
trait Iterator {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
#![allow(dead_code)]
|
||||
#![allow(unused_unsafe)]
|
||||
|
||||
use std::kinds::Sync;
|
||||
use std::marker::Sync;
|
||||
|
||||
struct Foo {
|
||||
a: uint,
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
// Issue 4691: Ensure that functional-struct-updates operates
|
||||
// correctly and moves rather than copy when appropriate.
|
||||
|
||||
use std::kinds::marker::NoCopy as NP;
|
||||
use std::marker::NoCopy as NP;
|
||||
|
||||
struct ncint { np: NP, v: int }
|
||||
fn ncint(v: int) -> ncint { ncint { np: NP, v: v } }
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
#![allow(dead_code)]
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
#[derive(Copy)]
|
||||
struct Foo<T> { x: T }
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
use std::cell::UnsafeCell;
|
||||
|
||||
struct MyUnsafePack<T>(UnsafeCell<T>);
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ pub mod pipes {
|
|||
use std::mem::{replace, swap};
|
||||
use std::mem;
|
||||
use std::thread::Thread;
|
||||
use std::kinds::Send;
|
||||
use std::marker::Send;
|
||||
|
||||
pub struct Stuff<T> {
|
||||
state: state,
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
// know not to stop at the blanket, we have to recursively evaluate
|
||||
// the `T:Foo` bound.
|
||||
|
||||
use std::kinds::Sized;
|
||||
use std::marker::Sized;
|
||||
|
||||
// Note: this must be generic for the problem to show up
|
||||
trait Foo<A> {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
// Test that a type whose lifetime parameters is never used is
|
||||
// inferred to be bivariant.
|
||||
|
||||
use std::kinds::marker;
|
||||
use std::marker;
|
||||
|
||||
struct Bivariant<'a>;
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#![feature(optin_builtin_traits)]
|
||||
|
||||
use std::kinds::Send;
|
||||
use std::marker::Send;
|
||||
|
||||
struct TestType;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue