error[E0530]: match bindings cannot shadow tuple structs --> $DIR/pat-tuple-field-count-cross.rs:13:9 | LL | use declarations_for_tuple_field_count_errors::*; | -------------------------------------------- the tuple struct `Z1` is imported here ... LL | Z1 => {} | ^^ | | | cannot be named the same as a tuple struct | help: try specify the pattern arguments: `Z1(..)` error[E0532]: expected tuple struct or tuple variant, found unit struct `Z0` --> $DIR/pat-tuple-field-count-cross.rs:9:9 | LL | Z0() => {} | ^^^^ | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:1:1 | LL | pub struct Z0; | ------------- `Z0` defined here LL | pub struct Z1(); | ------------- similarly named tuple struct `Z1` defined here | help: use this syntax instead | LL | Z0 => {} | ~~ help: a tuple struct with a similar name exists | LL | Z1() => {} | ~~ error[E0532]: expected tuple struct or tuple variant, found unit struct `Z0` --> $DIR/pat-tuple-field-count-cross.rs:10:9 | LL | Z0(x) => {} | ^^^^^ | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:1:1 | LL | pub struct Z0; | ------------- `Z0` defined here LL | pub struct Z1(); | ------------- similarly named tuple struct `Z1` defined here | help: use this syntax instead | LL | Z0 => {} | ~~ help: a tuple struct with a similar name exists | LL | Z1(x) => {} | ~~ error[E0532]: expected tuple struct or tuple variant, found unit variant `E1::Z0` --> $DIR/pat-tuple-field-count-cross.rs:31:9 | LL | E1::Z0() => {} | ^^^^^^^^ | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:15 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- similarly named tuple variant `Z1` defined here | | | `E1::Z0` defined here | help: use this syntax instead | LL | E1::Z0 => {} | ~~~~~~ help: a tuple variant with a similar name exists | LL | E1::Z1() => {} | ~~ error[E0532]: expected tuple struct or tuple variant, found unit variant `E1::Z0` --> $DIR/pat-tuple-field-count-cross.rs:32:9 | LL | E1::Z0(x) => {} | ^^^^^^^^^ | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:15 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- similarly named tuple variant `Z1` defined here | | | `E1::Z0` defined here | help: use this syntax instead | LL | E1::Z0 => {} | ~~~~~~ help: a tuple variant with a similar name exists | LL | E1::Z1(x) => {} | ~~ error[E0532]: expected unit struct, unit variant or constant, found tuple variant `E1::Z1` --> $DIR/pat-tuple-field-count-cross.rs:35:9 | LL | E1::Z1 => {} | ^^^^^^ | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:19 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- `E1::Z1` defined here | | | similarly named unit variant `Z0` defined here | help: use the tuple variant pattern syntax instead | LL | E1::Z1() => {} | ~~~~~~~~ help: a unit variant with a similar name exists | LL | E1::Z0 => {} | ~~ error[E0023]: this pattern has 1 field, but the corresponding tuple struct has 0 fields --> $DIR/pat-tuple-field-count-cross.rs:14:12 | LL | Z1(x) => {} | ^ expected 0 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:2:1 | LL | pub struct Z1(); | ------------- tuple struct has 0 fields error[E0023]: this pattern has 0 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:18:9 | LL | S() => {} | ^^^ expected 3 fields, found 0 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:4:14 | LL | pub struct S(pub u8, pub u8, pub u8); | ------ ------ ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | S(_, _, _) => {} | +++++++ help: use `..` to ignore all fields | LL | S(..) => {} | ++ error[E0023]: this pattern has 1 field, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:19:11 | LL | S(1) => {} | ^ expected 3 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:4:14 | LL | pub struct S(pub u8, pub u8, pub u8); | ------ ------ ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | S(1, _, _) => {} | ++++++ help: use `..` to ignore the rest of the fields | LL | S(1, ..) => {} | ++++ error[E0023]: this pattern has 2 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:20:11 | LL | S(xyz, abc) => {} | ^^^ ^^^ expected 3 fields, found 2 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:4:14 | LL | pub struct S(pub u8, pub u8, pub u8); | ------ ------ ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | S(xyz, abc, _) => {} | +++ error[E0023]: this pattern has 4 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:21:11 | LL | S(1, 2, 3, 4) => {} | ^ ^ ^ ^ expected 3 fields, found 4 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:4:14 | LL | pub struct S(pub u8, pub u8, pub u8); | ------ ------ ------ tuple struct has 3 fields error[E0023]: this pattern has 0 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:24:9 | LL | M() => {} | ^^^ expected 3 fields, found 0 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:5:12 | LL | pub struct M( | - tuple struct defined here LL | pub u8, | ------ LL | pub u8, | ------ LL | pub u8, | ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | M(_, _, _) => {} | +++++++ help: use `..` to ignore all fields | LL | M(..) => {} | ++ error[E0023]: this pattern has 1 field, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:25:11 | LL | M(1) => {} | ^ expected 3 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:5:12 | LL | pub struct M( | - tuple struct defined here LL | pub u8, | ------ LL | pub u8, | ------ LL | pub u8, | ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | M(1, _, _) => {} | ++++++ help: use `..` to ignore the rest of the fields | LL | M(1, ..) => {} | ++++ error[E0023]: this pattern has 2 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:26:11 | LL | M(xyz, abc) => {} | ^^^ ^^^ expected 3 fields, found 2 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:5:12 | LL | pub struct M( | - tuple struct defined here LL | pub u8, | ------ LL | pub u8, | ------ LL | pub u8, | ------ tuple struct has 3 fields | help: use `_` to explicitly ignore each field | LL | M(xyz, abc, _) => {} | +++ error[E0023]: this pattern has 4 fields, but the corresponding tuple struct has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:27:11 | LL | M(1, 2, 3, 4) => {} | ^ ^ ^ ^ expected 3 fields, found 4 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:5:12 | LL | pub struct M( | - tuple struct defined here LL | pub u8, | ------ LL | pub u8, | ------ LL | pub u8, | ------ tuple struct has 3 fields error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 0 fields --> $DIR/pat-tuple-field-count-cross.rs:36:16 | LL | E1::Z1(x) => {} | ^ expected 0 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:19 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- tuple variant has 0 fields error[E0023]: this pattern has 0 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:39:9 | LL | E1::S() => {} | ^^^^^^^ expected 3 fields, found 0 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:27 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E1::S(_, _, _) => {} | +++++++ help: use `..` to ignore all fields | LL | E1::S(..) => {} | ++ error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:40:15 | LL | E1::S(1) => {} | ^ expected 3 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:27 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E1::S(1, _, _) => {} | ++++++ help: use `..` to ignore the rest of the fields | LL | E1::S(1, ..) => {} | ++++ error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:41:15 | LL | E1::S(xyz, abc) => {} | ^^^ ^^^ expected 3 fields, found 2 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:27 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E1::S(xyz, abc, _) => {} | +++ error[E0023]: this pattern has 4 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:42:15 | LL | E1::S(1, 2, 3, 4) => {} | ^ ^ ^ ^ expected 3 fields, found 4 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:11:27 | LL | pub enum E1 { Z0, Z1(), S(u8, u8, u8) } | -- -- -- tuple variant has 3 fields error[E0023]: this pattern has 0 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:46:9 | LL | E2::S() => {} | ^^^^^^^ expected 3 fields, found 0 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:14:7 | LL | S(u8, u8, u8), | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::S(_, _, _) => {} | +++++++ help: use `..` to ignore all fields | LL | E2::S(..) => {} | ++ error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:47:15 | LL | E2::S(1) => {} | ^ expected 3 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:14:7 | LL | S(u8, u8, u8), | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::S(1, _, _) => {} | ++++++ help: use `..` to ignore the rest of the fields | LL | E2::S(1, ..) => {} | ++++ error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:48:15 | LL | E2::S(xyz, abc) => {} | ^^^ ^^^ expected 3 fields, found 2 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:14:7 | LL | S(u8, u8, u8), | -- -- -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::S(xyz, abc, _) => {} | +++ error[E0023]: this pattern has 4 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:49:15 | LL | E2::S(1, 2, 3, 4) => {} | ^ ^ ^ ^ expected 3 fields, found 4 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:14:7 | LL | S(u8, u8, u8), | -- -- -- tuple variant has 3 fields error[E0023]: this pattern has 0 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:52:9 | LL | E2::M() => {} | ^^^^^^^ expected 3 fields, found 0 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:15:5 | LL | M( | - tuple variant defined here LL | u8, | -- LL | u8, | -- LL | u8, | -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::M(_, _, _) => {} | +++++++ help: use `..` to ignore all fields | LL | E2::M(..) => {} | ++ error[E0023]: this pattern has 1 field, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:53:15 | LL | E2::M(1) => {} | ^ expected 3 fields, found 1 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:15:5 | LL | M( | - tuple variant defined here LL | u8, | -- LL | u8, | -- LL | u8, | -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::M(1, _, _) => {} | ++++++ help: use `..` to ignore the rest of the fields | LL | E2::M(1, ..) => {} | ++++ error[E0023]: this pattern has 2 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:54:15 | LL | E2::M(xyz, abc) => {} | ^^^ ^^^ expected 3 fields, found 2 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:15:5 | LL | M( | - tuple variant defined here LL | u8, | -- LL | u8, | -- LL | u8, | -- tuple variant has 3 fields | help: use `_` to explicitly ignore each field | LL | E2::M(xyz, abc, _) => {} | +++ error[E0023]: this pattern has 4 fields, but the corresponding tuple variant has 3 fields --> $DIR/pat-tuple-field-count-cross.rs:55:15 | LL | E2::M(1, 2, 3, 4) => {} | ^ ^ ^ ^ expected 3 fields, found 4 | ::: $DIR/auxiliary/declarations-for-tuple-field-count-errors.rs:15:5 | LL | M( | - tuple variant defined here LL | u8, | -- LL | u8, | -- LL | u8, | -- tuple variant has 3 fields error: aborting due to 28 previous errors Some errors have detailed explanations: E0023, E0530, E0532. For more information about an error, try `rustc --explain E0023`.