Rollup merge of #53544 - estebank:issue-53534, r=varkor
Point at the trait argument when using unboxed closure Fix #53534. r? @varkor
This commit is contained in:
commit
e53a575ddb
@ -1079,12 +1079,13 @@ impl<'a> Parser<'a> {
|
|||||||
self.parse_seq_to_before_tokens(&[ket], sep, TokenExpectType::Expect, f)
|
self.parse_seq_to_before_tokens(&[ket], sep, TokenExpectType::Expect, f)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse_seq_to_before_tokens<T, F>(&mut self,
|
fn parse_seq_to_before_tokens<T, F>(
|
||||||
kets: &[&token::Token],
|
&mut self,
|
||||||
sep: SeqSep,
|
kets: &[&token::Token],
|
||||||
expect: TokenExpectType,
|
sep: SeqSep,
|
||||||
mut f: F)
|
expect: TokenExpectType,
|
||||||
-> PResult<'a, Vec<T>>
|
mut f: F,
|
||||||
|
) -> PResult<'a, Vec<T>>
|
||||||
where F: FnMut(&mut Parser<'a>) -> PResult<'a, T>
|
where F: FnMut(&mut Parser<'a>) -> PResult<'a, T>
|
||||||
{
|
{
|
||||||
let mut first: bool = true;
|
let mut first: bool = true;
|
||||||
@ -2058,12 +2059,12 @@ impl<'a> Parser<'a> {
|
|||||||
TokenExpectType::Expect,
|
TokenExpectType::Expect,
|
||||||
|p| p.parse_ty())?;
|
|p| p.parse_ty())?;
|
||||||
self.bump(); // `)`
|
self.bump(); // `)`
|
||||||
|
let span = lo.to(self.prev_span);
|
||||||
let output = if self.eat(&token::RArrow) {
|
let output = if self.eat(&token::RArrow) {
|
||||||
Some(self.parse_ty_common(false, false)?)
|
Some(self.parse_ty_common(false, false)?)
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
};
|
};
|
||||||
let span = lo.to(self.prev_span);
|
|
||||||
ParenthesisedArgs { inputs, output, span }.into()
|
ParenthesisedArgs { inputs, output, span }.into()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ error[E0244]: wrong number of type arguments: expected 0, found 1
|
|||||||
--> $DIR/unboxed-closure-sugar-wrong-trait.rs:15:13
|
--> $DIR/unboxed-closure-sugar-wrong-trait.rs:15:13
|
||||||
|
|
|
|
||||||
LL | fn f<F:Trait(isize) -> isize>(x: F) {}
|
LL | fn f<F:Trait(isize) -> isize>(x: F) {}
|
||||||
| ^^^^^^^^^^^^^^^^ unexpected type argument
|
| ^^^^^^^ unexpected type argument
|
||||||
|
|
||||||
error[E0220]: associated type `Output` not found for `Trait`
|
error[E0220]: associated type `Output` not found for `Trait`
|
||||||
--> $DIR/unboxed-closure-sugar-wrong-trait.rs:15:24
|
--> $DIR/unboxed-closure-sugar-wrong-trait.rs:15:24
|
||||||
|
Loading…
Reference in New Issue
Block a user