Change taskgroup key type to fn:Copy in prep for noncopyable stack closures.
This commit is contained in:
@@ -1202,7 +1202,7 @@ mod big_tests {
|
||||
|
||||
struct LVal<'self> {
|
||||
val: uint,
|
||||
key: &'self fn(@uint),
|
||||
key: &'self fn:Copy(@uint),
|
||||
}
|
||||
|
||||
#[unsafe_destructor]
|
||||
|
||||
@@ -46,7 +46,7 @@ use task::local_data_priv::{local_get, local_pop, local_modify, local_set, Handl
|
||||
*
|
||||
* These two cases aside, the interface is safe.
|
||||
*/
|
||||
pub type LocalDataKey<'self,T> = &'self fn(v: @T);
|
||||
pub type LocalDataKey<'self,T> = &'self fn:Copy(v: @T);
|
||||
|
||||
/**
|
||||
* Remove a task-local data value from the table, returning the
|
||||
|
||||
@@ -704,7 +704,7 @@ pub fn new_sctable_internal() -> SCTable {
|
||||
pub fn get_sctable() -> @mut SCTable {
|
||||
unsafe {
|
||||
let sctable_key = (cast::transmute::<(uint, uint),
|
||||
&fn(v: @@mut SCTable)>(
|
||||
&fn:Copy(v: @@mut SCTable)>(
|
||||
(-4 as uint, 0u)));
|
||||
match local_data::local_data_get(sctable_key) {
|
||||
None => {
|
||||
|
||||
@@ -484,7 +484,7 @@ pub fn get_ident_interner() -> @ident_interner {
|
||||
unsafe {
|
||||
let key =
|
||||
(cast::transmute::<(uint, uint),
|
||||
&fn(v: @@::parse::token::ident_interner)>(
|
||||
&fn:Copy(v: @@::parse::token::ident_interner)>(
|
||||
(-3 as uint, 0u)));
|
||||
match local_data::local_data_get(key) {
|
||||
Some(interner) => *interner,
|
||||
|
||||
Reference in New Issue
Block a user