@@ -376,7 +376,8 @@ impl of region_scope for @fn_ctxt {
376
376
}
377
377
378
378
enum anon_rscope = { anon: ty:: region, base: region_scope} ;
379
- fn in_anon_rscope < RS : region_scope > ( self : RS , r : ty:: region ) -> @anon_rscope {
379
+ fn in_anon_rscope < RS : region_scope copy> ( self : RS , r : ty:: region )
380
+ -> @anon_rscope {
380
381
@anon_rscope ( { anon: r, base: self as region_scope } )
381
382
}
382
383
impl of region_scope for @anon_rscope {
@@ -395,7 +396,7 @@ impl of region_scope for self_rscope {
395
396
}
396
397
397
398
enum binding_rscope = { base: region_scope} ;
398
- fn in_binding_rscope < RS : region_scope > ( self : RS ) -> @binding_rscope {
399
+ fn in_binding_rscope < RS : region_scope copy > ( self : RS ) -> @binding_rscope {
399
400
let base = self as region_scope ;
400
401
@binding_rscope ( { base: base} )
401
402
}
@@ -410,7 +411,7 @@ impl of region_scope for @binding_rscope {
410
411
}
411
412
}
412
413
413
- fn ast_region_to_region < AC : ast_conv , RS : region_scope > (
414
+ fn ast_region_to_region < AC : ast_conv , RS : region_scope copy > (
414
415
self : AC , rscope : RS , span : span , a_r : ast:: region ) -> ty:: region {
415
416
416
417
alt a_r. node {
@@ -437,16 +438,16 @@ fn ast_region_to_region<AC: ast_conv, RS: region_scope>(
437
438
// Parses the programmer's textual representation of a type into our
438
439
// internal notion of a type. `getter` is a function that returns the type
439
440
// corresponding to a definition ID:
440
- fn ast_ty_to_ty < AC : ast_conv , RS : region_scope > (
441
+ fn ast_ty_to_ty < AC : ast_conv , RS : region_scope copy > (
441
442
self : AC , rscope : RS , & & ast_ty: @ast:: ty ) -> ty:: t {
442
443
443
- fn ast_mt_to_mt < AC : ast_conv , RS : region_scope > (
444
+ fn ast_mt_to_mt < AC : ast_conv , RS : region_scope copy > (
444
445
self : AC , rscope : RS , mt : ast:: mt ) -> ty:: mt {
445
446
446
447
ret { ty : ast_ty_to_ty ( self , rscope, mt. ty ) , mutbl : mt. mutbl } ;
447
448
}
448
449
449
- fn instantiate < AC : ast_conv , RS : region_scope > (
450
+ fn instantiate < AC : ast_conv , RS : region_scope copy > (
450
451
self : AC , rscope : RS , sp : span , id : ast:: def_id ,
451
452
path_id : ast:: node_id , args : [ @ast:: ty ] ) -> ty:: t {
452
453
@@ -478,7 +479,7 @@ fn ast_ty_to_ty<AC: ast_conv, RS: region_scope>(
478
479
ret ty;
479
480
}
480
481
481
- fn mk_vstore < AC : ast_conv , RS : region_scope > (
482
+ fn mk_vstore < AC : ast_conv , RS : region_scope copy > (
482
483
self : AC , rscope : RS , a_seq_ty : @ast:: ty , vst : ty:: vstore ) -> ty:: t {
483
484
484
485
let tcx = self . tcx ( ) ;
@@ -819,7 +820,7 @@ fn replace_bound_regions(
819
820
}
820
821
}
821
822
822
- fn ty_of_arg < AC : ast_conv , RS : region_scope > (
823
+ fn ty_of_arg < AC : ast_conv , RS : region_scope copy > (
823
824
self : AC , rscope : RS , a : ast:: arg ) -> ty:: arg {
824
825
825
826
fn arg_mode ( tcx : ty:: ctxt , m : ast:: mode , ty : ty:: t ) -> ast:: mode {
@@ -849,7 +850,7 @@ fn ty_of_arg<AC: ast_conv, RS: region_scope>(
849
850
let mode = arg_mode ( self . tcx ( ) , a. mode , ty) ;
850
851
{ mode: mode, ty: ty}
851
852
}
852
- fn ty_of_fn_decl < AC : ast_conv , RS : region_scope > (
853
+ fn ty_of_fn_decl < AC : ast_conv , RS : region_scope copy > (
853
854
self : AC , rscope : RS ,
854
855
proto : ast:: proto ,
855
856
decl : ast:: fn_decl ) -> ty:: fn_ty {
0 commit comments