@@ -2248,20 +2248,27 @@ fn check_type_argument_count(tcx: TyCtxt, span: Span, supplied: usize,
2248
2248
} else {
2249
2249
"expected"
2250
2250
} ;
2251
- span_err ! ( tcx. sess, span, E0243 ,
2252
- "wrong number of type arguments: {} {}, found {}" ,
2253
- expected, required, supplied) ;
2251
+ struct_span_err ! ( tcx. sess, span, E0243 , "wrong number of type arguments" )
2252
+ . span_label (
2253
+ span,
2254
+ & format ! ( "{} {} type arguments, found {}" , expected, required, supplied)
2255
+ )
2256
+ . emit ( ) ;
2254
2257
} else if supplied > accepted {
2255
- let expected = if required < accepted {
2256
- "expected at most"
2258
+ let expected = if required == 0 {
2259
+ "expected no" . to_string ( )
2260
+ } else if required < accepted {
2261
+ format ! ( "expected at most {}" , accepted)
2257
2262
} else {
2258
- "expected"
2263
+ format ! ( "expected {}" , accepted )
2259
2264
} ;
2260
- span_err ! ( tcx. sess, span, E0244 ,
2261
- "wrong number of type arguments: {} {}, found {}" ,
2262
- expected,
2263
- accepted,
2264
- supplied) ;
2265
+
2266
+ struct_span_err ! ( tcx. sess, span, E0244 , "wrong number of type arguments" )
2267
+ . span_label (
2268
+ span,
2269
+ & format ! ( "{} type arguments, found {}" , expected, supplied)
2270
+ )
2271
+ . emit ( ) ;
2265
2272
}
2266
2273
}
2267
2274
0 commit comments