Skip to content

Commit 8f137f7

Browse files
author
Nick Hamann
committed
---
yaml --- r: 218699 b: refs/heads/snap-stage3 c: fbef978 h: refs/heads/master i: 218697: c8006b8 218695: f26e306 v: v3
1 parent 4e8c2b8 commit 8f137f7

File tree

3 files changed

+24
-13
lines changed

3 files changed

+24
-13
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
refs/heads/master: c044791d80ea0dc5c4b57b6030a67b69f8510239
3-
refs/heads/snap-stage3: d8d4a6a842d0cd323e5eddff8ec1cbfcc66ac091
3+
refs/heads/snap-stage3: fbef978fd7c406ce306c7fa060e86125b99b9498
44
refs/heads/try: b53c0f93eedcdedd4fd89bccc5a3a09d1c5cd23e
55
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
66
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/snap-stage3/src/librustc_typeck/check/mod.rs

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4688,9 +4688,12 @@ pub fn instantiate_path<'a, 'tcx>(fcx: &FnCtxt<'a, 'tcx>,
46884688
} else if i == type_count {
46894689
span_err!(fcx.tcx().sess, typ.span, E0087,
46904690
"too many type parameters provided: \
4691-
expected at most {} parameter(s), \
4692-
found {} parameter(s)",
4693-
type_count, data.types.len());
4691+
expected at most {} parameter{}, \
4692+
found {} parameter{}",
4693+
type_count,
4694+
if type_count == 1 {""} else {"s"},
4695+
data.types.len(),
4696+
if data.types.len() == 1 {""} else {"s"});
46944697
substs.types.truncate(space, 0);
46954698
break;
46964699
}
@@ -4713,9 +4716,11 @@ pub fn instantiate_path<'a, 'tcx>(fcx: &FnCtxt<'a, 'tcx>,
47134716
} else if i == region_count {
47144717
span_err!(fcx.tcx().sess, lifetime.span, E0088,
47154718
"too many lifetime parameters provided: \
4716-
expected {} parameter(s), found {} parameter(s)",
4719+
expected {} parameter{}, found {} parameter{}",
47174720
region_count,
4718-
data.lifetimes.len());
4721+
if region_count == 1 {""} else {"s"},
4722+
data.lifetimes.len(),
4723+
if data.lifetimes.len() == 1 {""} else {"s"});
47194724
substs.mut_regions().truncate(space, 0);
47204725
break;
47214726
}
@@ -4805,9 +4810,12 @@ pub fn instantiate_path<'a, 'tcx>(fcx: &FnCtxt<'a, 'tcx>,
48054810
let qualifier =
48064811
if desired.len() != required_len { "at least " } else { "" };
48074812
span_err!(fcx.tcx().sess, span, E0089,
4808-
"too few type parameters provided: expected {}{} parameter(s) \
4809-
, found {} parameter(s)",
4810-
qualifier, required_len, provided_len);
4813+
"too few type parameters provided: expected {}{} parameter{}, \
4814+
found {} parameter{}",
4815+
qualifier, required_len,
4816+
if required_len == 1 {""} else {"s"},
4817+
provided_len,
4818+
if provided_len == 1 {""} else {"s"});
48114819
substs.types.replace(space, repeat(fcx.tcx().types.err).take(desired.len()).collect());
48124820
return;
48134821
}
@@ -4858,9 +4866,12 @@ pub fn instantiate_path<'a, 'tcx>(fcx: &FnCtxt<'a, 'tcx>,
48584866
// Otherwise, too few were provided. Report an error and then
48594867
// use inference variables.
48604868
span_err!(fcx.tcx().sess, span, E0090,
4861-
"too few lifetime parameters provided: expected {} parameter(s), \
4862-
found {} parameter(s)",
4863-
desired.len(), provided_len);
4869+
"too few lifetime parameters provided: expected {} parameter{}, \
4870+
found {} parameter{}",
4871+
desired.len(),
4872+
if desired.len() == 1 {""} else {"s"},
4873+
provided_len,
4874+
if provided_len == 1 {""} else {"s"});
48644875

48654876
substs.mut_regions().replace(
48664877
space,

branches/snap-stage3/src/test/compile-fail/ufcs-qpath-missing-params.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@ use std::borrow::IntoCow;
1212

1313
fn main() {
1414
<String as IntoCow>::into_cow("foo".to_string());
15-
//~^ ERROR too few type parameters provided: expected 1 parameter(s)
15+
//~^ ERROR too few type parameters provided: expected 1 parameter
1616
}

0 commit comments

Comments
 (0)