@@ -273,7 +273,7 @@ where
273
273
Normalized { value, obligations }
274
274
}
275
275
276
- #[ instrument( level = "debug " , skip( selcx, param_env, cause, obligations) ) ]
276
+ #[ instrument( level = "info " , skip( selcx, param_env, cause, obligations) ) ]
277
277
pub fn normalize_with_depth_to < ' a , ' b , ' tcx , T > (
278
278
selcx : & ' a mut SelectionContext < ' b , ' tcx > ,
279
279
param_env : ty:: ParamEnv < ' tcx > ,
@@ -285,6 +285,7 @@ pub fn normalize_with_depth_to<'a, 'b, 'tcx, T>(
285
285
where
286
286
T : TypeFoldable < ' tcx > ,
287
287
{
288
+ debug ! ( obligations. len = obligations. len( ) ) ;
288
289
let mut normalizer = AssocTypeNormalizer :: new ( selcx, param_env, cause, depth, obligations) ;
289
290
let result = ensure_sufficient_stack ( || normalizer. fold ( value) ) ;
290
291
debug ! ( ?result, obligations. len = normalizer. obligations. len( ) ) ;
@@ -314,6 +315,7 @@ impl<'a, 'b, 'tcx> AssocTypeNormalizer<'a, 'b, 'tcx> {
314
315
315
316
fn fold < T : TypeFoldable < ' tcx > > ( & mut self , value : T ) -> T {
316
317
let value = self . selcx . infcx ( ) . resolve_vars_if_possible ( value) ;
318
+ debug ! ( ?value) ;
317
319
318
320
assert ! (
319
321
!value. has_escaping_bound_vars( ) ,
@@ -825,7 +827,7 @@ fn opt_normalize_projection_type<'a, 'b, 'tcx>(
825
827
826
828
let cache_result = infcx. inner . borrow_mut ( ) . projection_cache ( ) . try_start ( cache_key) ;
827
829
match cache_result {
828
- Ok ( ( ) ) => { }
830
+ Ok ( ( ) ) => debug ! ( "no cache" ) ,
829
831
Err ( ProjectionCacheEntry :: Ambiguous ) => {
830
832
// If we found ambiguity the last time, that means we will continue
831
833
// to do so until some type in the key changes (and we know it
@@ -852,6 +854,7 @@ fn opt_normalize_projection_type<'a, 'b, 'tcx>(
852
854
return Err ( InProgress ) ;
853
855
}
854
856
Err ( ProjectionCacheEntry :: Recur ) => {
857
+ debug ! ( "recur cache" ) ;
855
858
return Err ( InProgress ) ;
856
859
}
857
860
Err ( ProjectionCacheEntry :: NormalizedTy ( ty) ) => {
@@ -1058,12 +1061,11 @@ impl<'tcx> Progress<'tcx> {
1058
1061
///
1059
1062
/// IMPORTANT:
1060
1063
/// - `obligation` must be fully normalized
1064
+ #[ tracing:: instrument( level = "info" , skip( selcx) ) ]
1061
1065
fn project_type < ' cx , ' tcx > (
1062
1066
selcx : & mut SelectionContext < ' cx , ' tcx > ,
1063
1067
obligation : & ProjectionTyObligation < ' tcx > ,
1064
1068
) -> Result < ProjectedTy < ' tcx > , ProjectionTyError < ' tcx > > {
1065
- debug ! ( ?obligation, "project_type" ) ;
1066
-
1067
1069
if !selcx. tcx ( ) . recursion_limit ( ) . value_within_limit ( obligation. recursion_depth ) {
1068
1070
debug ! ( "project: overflow!" ) ;
1069
1071
// This should really be an immediate error, but some existing code
0 commit comments