Continune parsing after encountering Trait with paren args
This commit is contained in:
parent
0c0c585281
commit
d38e70036e
6 changed files with 41 additions and 13 deletions
|
|
@ -1826,7 +1826,7 @@ impl<'a> LoweringContext<'a> {
|
|||
struct_span_err!(self.sess, data.span, E0214, "{}", msg)
|
||||
.span_label(data.span, "only traits may use parentheses")
|
||||
.emit();
|
||||
(hir::GenericArgs::none(), true)
|
||||
(hir::GenericArgs::none(), false)
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,13 @@ error[E0214]: parenthesized parameters may only be used with a trait
|
|||
LL | let v: Vec(&str) = vec!["foo"];
|
||||
| ^^^^^^ only traits may use parentheses
|
||||
|
||||
error: aborting due to previous error
|
||||
error[E0107]: wrong number of type arguments: expected 1, found 0
|
||||
--> $DIR/E0214.rs:2:12
|
||||
|
|
||||
LL | let v: Vec(&str) = vec!["foo"];
|
||||
| ^^^^^^^^^ expected 1 type argument
|
||||
|
||||
For more information about this error, try `rustc --explain E0214`.
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors occurred: E0107, E0214.
|
||||
For more information about an error, try `rustc --explain E0107`.
|
||||
|
|
|
|||
|
|
@ -4,6 +4,13 @@ error[E0214]: parenthesized parameters may only be used with a trait
|
|||
LL | let v: Vec(&str) = vec!['1', '2'];
|
||||
| ^^^^^^ only traits may use parentheses
|
||||
|
||||
error: aborting due to previous error
|
||||
error[E0107]: wrong number of type arguments: expected 1, found 0
|
||||
--> $DIR/issue-23589.rs:2:12
|
||||
|
|
||||
LL | let v: Vec(&str) = vec!['1', '2'];
|
||||
| ^^^^^^^^^ expected 1 type argument
|
||||
|
||||
For more information about this error, try `rustc --explain E0214`.
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors occurred: E0107, E0214.
|
||||
For more information about an error, try `rustc --explain E0107`.
|
||||
|
|
|
|||
|
|
@ -4,6 +4,13 @@ error[E0214]: parenthesized parameters may only be used with a trait
|
|||
LL | let x: Box<Bar()> = panic!();
|
||||
| ^^ only traits may use parentheses
|
||||
|
||||
error: aborting due to previous error
|
||||
error[E0107]: wrong number of type arguments: expected 1, found 0
|
||||
--> $DIR/unboxed-closure-sugar-used-on-struct-1.rs:8:16
|
||||
|
|
||||
LL | let x: Box<Bar()> = panic!();
|
||||
| ^^^^^ expected 1 type argument
|
||||
|
||||
For more information about this error, try `rustc --explain E0214`.
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors occurred: E0107, E0214.
|
||||
For more information about an error, try `rustc --explain E0107`.
|
||||
|
|
|
|||
|
|
@ -4,6 +4,13 @@ error[E0214]: parenthesized parameters may only be used with a trait
|
|||
LL | let b = Bar::(isize, usize)::new(); // OK too (for the parser)
|
||||
| ^^^^^^^^^^^^^^^^ only traits may use parentheses
|
||||
|
||||
error: aborting due to previous error
|
||||
error[E0107]: wrong number of type arguments: expected 2, found 0
|
||||
--> $DIR/unboxed-closure-sugar-used-on-struct-3.rs:14:13
|
||||
|
|
||||
LL | let b = Bar::(isize, usize)::new(); // OK too (for the parser)
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 type arguments
|
||||
|
||||
For more information about this error, try `rustc --explain E0214`.
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors occurred: E0107, E0214.
|
||||
For more information about an error, try `rustc --explain E0107`.
|
||||
|
|
|
|||
|
|
@ -4,13 +4,13 @@ error[E0214]: parenthesized parameters may only be used with a trait
|
|||
LL | fn foo(b: Box<Bar()>) {
|
||||
| ^^ only traits may use parentheses
|
||||
|
||||
error[E0121]: the type placeholder `_` is not allowed within types on item signatures
|
||||
error[E0107]: wrong number of type arguments: expected 1, found 0
|
||||
--> $DIR/unboxed-closure-sugar-used-on-struct.rs:7:15
|
||||
|
|
||||
LL | fn foo(b: Box<Bar()>) {
|
||||
| ^^^^^ not allowed in type signatures
|
||||
| ^^^^^ expected 1 type argument
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors occurred: E0121, E0214.
|
||||
For more information about an error, try `rustc --explain E0121`.
|
||||
Some errors occurred: E0107, E0214.
|
||||
For more information about an error, try `rustc --explain E0107`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue