@@ -1841,31 +1841,29 @@ impl<'cx, 'gcx, 'tcx> MirBorrowckCtxt<'cx, 'gcx, 'tcx> {
1841
1841
elem : ProjectionElem :: Deref ,
1842
1842
} ) if self . mir . local_decls [ * local] . is_user_variable . is_some ( ) => {
1843
1843
let local_decl = & self . mir . local_decls [ * local] ;
1844
- let suggestion = match local_decl. is_user_variable {
1845
- Some ( ClearCrossCrate :: Set ( mir:: BindingForm :: ImplicitSelf ) ) => {
1844
+ let suggestion = match local_decl. is_user_variable . as_ref ( ) . unwrap ( ) {
1845
+ ClearCrossCrate :: Set ( mir:: BindingForm :: ImplicitSelf ) => {
1846
1846
Some ( suggest_ampmut_self ( local_decl) )
1847
1847
} ,
1848
1848
1849
- Some ( ClearCrossCrate :: Set ( mir:: BindingForm :: Var ( mir:: VarBindingForm {
1849
+ ClearCrossCrate :: Set ( mir:: BindingForm :: Var ( mir:: VarBindingForm {
1850
1850
binding_mode : ty:: BindingMode :: BindByValue ( _) ,
1851
1851
opt_ty_info,
1852
1852
..
1853
- } ) ) ) => Some ( suggest_ampmut (
1853
+ } ) ) => Some ( suggest_ampmut (
1854
1854
self . tcx ,
1855
1855
self . mir ,
1856
1856
* local,
1857
1857
local_decl,
1858
- opt_ty_info,
1858
+ * opt_ty_info,
1859
1859
) ) ,
1860
1860
1861
- Some ( ClearCrossCrate :: Set ( mir:: BindingForm :: Var ( mir:: VarBindingForm {
1861
+ ClearCrossCrate :: Set ( mir:: BindingForm :: Var ( mir:: VarBindingForm {
1862
1862
binding_mode : ty:: BindingMode :: BindByReference ( _) ,
1863
1863
..
1864
- } ) ) ) => suggest_ref_mut ( self . tcx , local_decl) ,
1865
-
1866
- Some ( ClearCrossCrate :: Clear ) => bug ! ( "saw cleared local state" ) ,
1864
+ } ) ) => suggest_ref_mut ( self . tcx , local_decl) ,
1867
1865
1868
- None => bug ! ( ) ,
1866
+ ClearCrossCrate :: Clear => bug ! ( "saw cleared local state" ) ,
1869
1867
} ;
1870
1868
1871
1869
if let Some ( ( err_help_span, suggested_code) ) = suggestion {
0 commit comments