@@ -32,6 +32,7 @@ use middle::def_id::DefId;
32
32
use middle:: expr_use_visitor as euv;
33
33
use middle:: infer;
34
34
use middle:: mem_categorization as mc;
35
+ use middle:: mem_categorization:: Categorization ;
35
36
use middle:: traits;
36
37
use middle:: ty:: { self , Ty } ;
37
38
use util:: nodemap:: NodeMap ;
@@ -855,7 +856,7 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for CheckCrateVisitor<'a, 'tcx> {
855
856
let mut cur = & cmt;
856
857
loop {
857
858
match cur. cat {
858
- mc :: cat_static_item => {
859
+ Categorization :: StaticItem => {
859
860
if self . mode != Mode :: Var {
860
861
// statics cannot be consumed by value at any time, that would imply
861
862
// that they're an initializer (what a const is for) or kept in sync
@@ -866,13 +867,13 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for CheckCrateVisitor<'a, 'tcx> {
866
867
}
867
868
break ;
868
869
}
869
- mc :: cat_deref ( ref cmt, _, _) |
870
- mc :: cat_downcast ( ref cmt, _) |
871
- mc :: cat_interior ( ref cmt, _) => cur = cmt,
870
+ Categorization :: Deref ( ref cmt, _, _) |
871
+ Categorization :: Downcast ( ref cmt, _) |
872
+ Categorization :: Interior ( ref cmt, _) => cur = cmt,
872
873
873
- mc :: cat_rvalue ( ..) |
874
- mc :: cat_upvar ( ..) |
875
- mc :: cat_local ( ..) => break
874
+ Categorization :: Rvalue ( ..) |
875
+ Categorization :: Upvar ( ..) |
876
+ Categorization :: Local ( ..) => break
876
877
}
877
878
}
878
879
}
@@ -899,7 +900,7 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for CheckCrateVisitor<'a, 'tcx> {
899
900
let mut is_interior = false ;
900
901
loop {
901
902
match cur. cat {
902
- mc :: cat_rvalue ( ..) => {
903
+ Categorization :: Rvalue ( ..) => {
903
904
if loan_cause == euv:: MatchDiscriminant {
904
905
// Ignore the dummy immutable borrow created by EUV.
905
906
break ;
@@ -920,7 +921,7 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for CheckCrateVisitor<'a, 'tcx> {
920
921
self . record_borrow ( borrow_id, mutbl) ;
921
922
break ;
922
923
}
923
- mc :: cat_static_item => {
924
+ Categorization :: StaticItem => {
924
925
if is_interior && self . mode != Mode :: Var {
925
926
// Borrowed statics can specifically *only* have their address taken,
926
927
// not any number of other borrows such as borrowing fields, reading
@@ -931,15 +932,15 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for CheckCrateVisitor<'a, 'tcx> {
931
932
}
932
933
break ;
933
934
}
934
- mc :: cat_deref ( ref cmt, _, _) |
935
- mc :: cat_downcast ( ref cmt, _) |
936
- mc :: cat_interior ( ref cmt, _) => {
935
+ Categorization :: Deref ( ref cmt, _, _) |
936
+ Categorization :: Downcast ( ref cmt, _) |
937
+ Categorization :: Interior ( ref cmt, _) => {
937
938
is_interior = true ;
938
939
cur = cmt;
939
940
}
940
941
941
- mc :: cat_upvar ( ..) |
942
- mc :: cat_local ( ..) => break
942
+ Categorization :: Upvar ( ..) |
943
+ Categorization :: Local ( ..) => break
943
944
}
944
945
}
945
946
}
0 commit comments