@@ -1901,14 +1901,14 @@ impl FnParam<'_> {
19011901 }
19021902}
19031903
1904- struct FnCallDiagCtxt < ' a , ' b , ' tcx > {
1905- arg_matching_ctxt : ArgMatchingCtxt < ' a , ' b , ' tcx > ,
1904+ struct FnCallDiagCtxt < ' a , ' tcx > {
1905+ arg_matching_ctxt : ArgMatchingCtxt < ' a , ' tcx > ,
19061906 errors : Vec < Error < ' tcx > > ,
19071907 matched_inputs : IndexVec < ExpectedIdx , Option < ProvidedIdx > > ,
19081908}
19091909
1910- impl < ' a , ' b , ' tcx > Deref for FnCallDiagCtxt < ' a , ' b , ' tcx > {
1911- type Target = ArgMatchingCtxt < ' a , ' b , ' tcx > ;
1910+ impl < ' a , ' tcx > Deref for FnCallDiagCtxt < ' a , ' tcx > {
1911+ type Target = ArgMatchingCtxt < ' a , ' tcx > ;
19121912
19131913 fn deref ( & self ) -> & Self :: Target {
19141914 & self . arg_matching_ctxt
@@ -1921,9 +1921,9 @@ enum ArgumentsFormatting {
19211921 Multiline { fallback_indent : String , brace_indent : String } ,
19221922}
19231923
1924- impl < ' a , ' b , ' tcx > FnCallDiagCtxt < ' a , ' b , ' tcx > {
1924+ impl < ' a , ' tcx > FnCallDiagCtxt < ' a , ' tcx > {
19251925 fn new (
1926- arg : & ' a FnCtxt < ' b , ' tcx > ,
1926+ arg : & ' a FnCtxt < ' a , ' tcx > ,
19271927 compatibility_diagonal : IndexVec < ProvidedIdx , Compatibility < ' tcx > > ,
19281928 formal_and_expected_inputs : IndexVec < ExpectedIdx , ( Ty < ' tcx > , Ty < ' tcx > ) > ,
19291929 provided_args : IndexVec < ProvidedIdx , & ' tcx Expr < ' tcx > > ,
@@ -2618,7 +2618,7 @@ impl<'a, 'b, 'tcx> FnCallDiagCtxt<'a, 'b, 'tcx> {
26182618 ( suggestions, labels, suggestion_text)
26192619 }
26202620
2621- fn label_generic_mismatches ( & self , err : & mut Diag < ' b > ) {
2621+ fn label_generic_mismatches ( & self , err : & mut Diag < ' a > ) {
26222622 self . fn_ctxt . label_generic_mismatches (
26232623 err,
26242624 self . fn_def_id ,
@@ -2778,22 +2778,22 @@ impl<'a, 'b, 'tcx> FnCallDiagCtxt<'a, 'b, 'tcx> {
27782778 }
27792779}
27802780
2781- struct ArgMatchingCtxt < ' a , ' b , ' tcx > {
2782- args_ctxt : ArgsCtxt < ' a , ' b , ' tcx > ,
2781+ struct ArgMatchingCtxt < ' a , ' tcx > {
2782+ args_ctxt : ArgsCtxt < ' a , ' tcx > ,
27832783 provided_arg_tys : IndexVec < ProvidedIdx , ( Ty < ' tcx > , Span ) > ,
27842784}
27852785
2786- impl < ' a , ' b , ' tcx > Deref for ArgMatchingCtxt < ' a , ' b , ' tcx > {
2787- type Target = ArgsCtxt < ' a , ' b , ' tcx > ;
2786+ impl < ' a , ' tcx > Deref for ArgMatchingCtxt < ' a , ' tcx > {
2787+ type Target = ArgsCtxt < ' a , ' tcx > ;
27882788
27892789 fn deref ( & self ) -> & Self :: Target {
27902790 & self . args_ctxt
27912791 }
27922792}
27932793
2794- impl < ' a , ' b , ' tcx > ArgMatchingCtxt < ' a , ' b , ' tcx > {
2794+ impl < ' a , ' tcx > ArgMatchingCtxt < ' a , ' tcx > {
27952795 fn new (
2796- arg : & ' a FnCtxt < ' b , ' tcx > ,
2796+ arg : & ' a FnCtxt < ' a , ' tcx > ,
27972797 compatibility_diagonal : IndexVec < ProvidedIdx , Compatibility < ' tcx > > ,
27982798 formal_and_expected_inputs : IndexVec < ExpectedIdx , ( Ty < ' tcx > , Ty < ' tcx > ) > ,
27992799 provided_args : IndexVec < ProvidedIdx , & ' tcx Expr < ' tcx > > ,
@@ -2924,23 +2924,23 @@ impl<'a, 'b, 'tcx> ArgMatchingCtxt<'a, 'b, 'tcx> {
29242924 }
29252925}
29262926
2927- struct ArgsCtxt < ' a , ' b , ' tcx > {
2928- call_ctxt : CallCtxt < ' a , ' b , ' tcx > ,
2927+ struct ArgsCtxt < ' a , ' tcx > {
2928+ call_ctxt : CallCtxt < ' a , ' tcx > ,
29292929 call_metadata : CallMetadata ,
29302930 args_span : Span ,
29312931}
29322932
2933- impl < ' a , ' b , ' tcx > Deref for ArgsCtxt < ' a , ' b , ' tcx > {
2934- type Target = CallCtxt < ' a , ' b , ' tcx > ;
2933+ impl < ' a , ' tcx > Deref for ArgsCtxt < ' a , ' tcx > {
2934+ type Target = CallCtxt < ' a , ' tcx > ;
29352935
29362936 fn deref ( & self ) -> & Self :: Target {
29372937 & self . call_ctxt
29382938 }
29392939}
29402940
2941- impl < ' a , ' b , ' tcx > ArgsCtxt < ' a , ' b , ' tcx > {
2941+ impl < ' a , ' tcx > ArgsCtxt < ' a , ' tcx > {
29422942 fn new (
2943- arg : & ' a FnCtxt < ' b , ' tcx > ,
2943+ arg : & ' a FnCtxt < ' a , ' tcx > ,
29442944 compatibility_diagonal : IndexVec < ProvidedIdx , Compatibility < ' tcx > > ,
29452945 formal_and_expected_inputs : IndexVec < ExpectedIdx , ( Ty < ' tcx > , Ty < ' tcx > ) > ,
29462946 provided_args : IndexVec < ProvidedIdx , & ' tcx Expr < ' tcx > > ,
@@ -2951,7 +2951,7 @@ impl<'a, 'b, 'tcx> ArgsCtxt<'a, 'b, 'tcx> {
29512951 call_expr : & ' tcx Expr < ' tcx > ,
29522952 tuple_arguments : TupleArgumentsFlag ,
29532953 ) -> Self {
2954- let call_ctxt: CallCtxt < ' _ , ' _ , ' _ > = CallCtxt :: new (
2954+ let call_ctxt: CallCtxt < ' _ , ' _ > = CallCtxt :: new (
29552955 arg,
29562956 compatibility_diagonal,
29572957 formal_and_expected_inputs,
@@ -3058,8 +3058,8 @@ struct CallMetadata {
30583058 is_method : bool ,
30593059}
30603060
3061- struct CallCtxt < ' a , ' b , ' tcx > {
3062- fn_ctxt : & ' a FnCtxt < ' b , ' tcx > ,
3061+ struct CallCtxt < ' a , ' tcx > {
3062+ fn_ctxt : & ' a FnCtxt < ' a , ' tcx > ,
30633063 compatibility_diagonal : IndexVec < ProvidedIdx , Compatibility < ' tcx > > ,
30643064 formal_and_expected_inputs : IndexVec < ExpectedIdx , ( Ty < ' tcx > , Ty < ' tcx > ) > ,
30653065 provided_args : IndexVec < ProvidedIdx , & ' tcx hir:: Expr < ' tcx > > ,
@@ -3073,17 +3073,17 @@ struct CallCtxt<'a, 'b, 'tcx> {
30733073 callee_ty : Option < Ty < ' tcx > > ,
30743074}
30753075
3076- impl < ' a , ' b , ' tcx > Deref for CallCtxt < ' a , ' b , ' tcx > {
3077- type Target = & ' a FnCtxt < ' b , ' tcx > ;
3076+ impl < ' a , ' tcx > Deref for CallCtxt < ' a , ' tcx > {
3077+ type Target = & ' a FnCtxt < ' a , ' tcx > ;
30783078
30793079 fn deref ( & self ) -> & Self :: Target {
30803080 & self . fn_ctxt
30813081 }
30823082}
30833083
3084- impl < ' a , ' b , ' tcx > CallCtxt < ' a , ' b , ' tcx > {
3084+ impl < ' a , ' tcx > CallCtxt < ' a , ' tcx > {
30853085 fn new (
3086- fn_ctxt : & ' a FnCtxt < ' b , ' tcx > ,
3086+ fn_ctxt : & ' a FnCtxt < ' a , ' tcx > ,
30873087 compatibility_diagonal : IndexVec < ProvidedIdx , Compatibility < ' tcx > > ,
30883088 formal_and_expected_inputs : IndexVec < ExpectedIdx , ( Ty < ' tcx > , Ty < ' tcx > ) > ,
30893089 provided_args : IndexVec < ProvidedIdx , & ' tcx hir:: Expr < ' tcx > > ,
@@ -3093,7 +3093,7 @@ impl<'a, 'b, 'tcx> CallCtxt<'a, 'b, 'tcx> {
30933093 call_span : Span ,
30943094 call_expr : & ' tcx hir:: Expr < ' tcx > ,
30953095 tuple_arguments : TupleArgumentsFlag ,
3096- ) -> CallCtxt < ' a , ' b , ' tcx > {
3096+ ) -> CallCtxt < ' a , ' tcx > {
30973097 let callee_expr = match & call_expr. peel_blocks ( ) . kind {
30983098 hir:: ExprKind :: Call ( callee, _) => Some ( * callee) ,
30993099 hir:: ExprKind :: MethodCall ( _, receiver, ..) => {
0 commit comments