Skip to content

Commit

Permalink
Remove extra errors
Browse files Browse the repository at this point in the history
  • Loading branch information
mu001999 committed Aug 15, 2023
1 parent b1ddd57 commit 860fc24
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 39 deletions.
4 changes: 2 additions & 2 deletions tests/ui/suggestions/issue-114701.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
enum Enum<T> { , SVariant { v: T }, UVariant } //~ ERROR expected identifier, found `,`
enum Enum<T> { SVariant { v: T }, UVariant }

macro_rules! is_variant {
(TSVariant, ) => (!);
(SVariant, ) => (!);
(UVariant, $expr:expr) => (is_variant!(@check UVariant, {}, $expr));
(@check $variant:ident, $matcher:tt, $expr:expr) => (
assert!(if let Enum::$variant::<()> $matcher = $expr () else { false }, //~ ERROR this `if` expression
assert!(if let Enum::$variant::<()> $matcher = $expr () { true } else { false },
);
);
}
Expand Down
41 changes: 4 additions & 37 deletions tests/ui/suggestions/issue-114701.stderr
Original file line number Diff line number Diff line change
@@ -1,48 +1,15 @@
error: expected identifier, found `,`
--> $DIR/issue-114701.rs:1:16
|
LL | enum Enum<T> { , SVariant { v: T }, UVariant }
| ^
| |
| expected identifier
| help: remove this comma

error: this `if` expression is missing a block after the condition
--> $DIR/issue-114701.rs:8:17
|
LL | assert!(if let Enum::$variant::<()> $matcher = $expr () else { false },
| ^^
...
LL | is_variant!(UVariant, Enum::<()>::UVariant);
| ------------------------------------------- in this macro invocation
|
help: add a block here
--> $DIR/issue-114701.rs:8:64
|
LL | assert!(if let Enum::$variant::<()> $matcher = $expr () else { false },
| ^
...
LL | is_variant!(UVariant, Enum::<()>::UVariant);
| ------------------------------------------- in this macro invocation
= note: this error originates in the macro `is_variant` (in Nightly builds, run with -Z macro-backtrace for more info)
help: remove the `if` if you meant to write a `let...else` statement
|
LL - assert!(if let Enum::$variant::<()> $matcher = $expr () else { false },
LL + assert!(let Enum::$variant::<()> $matcher = $expr () else { false },
|

error[E0618]: expected function, found `Enum<()>`
--> $DIR/issue-114701.rs:14:27
|
LL | enum Enum<T> { , SVariant { v: T }, UVariant }
| -------- `Enum::UVariant` defined here
LL | enum Enum<T> { SVariant { v: T }, UVariant }
| -------- `Enum::UVariant` defined here
...
LL | assert!(if let Enum::$variant::<()> $matcher = $expr () else { false },
LL | assert!(if let Enum::$variant::<()> $matcher = $expr () { true } else { false },
| -------- call expression requires function
...
LL | is_variant!(UVariant, Enum::<()>::UVariant);
| ^^^^^^^^^^^^^^^^^^^^

error: aborting due to 3 previous errors
error: aborting due to previous error

For more information about this error, try `rustc --explain E0618`.

0 comments on commit 860fc24

Please sign in to comment.