diff options
Diffstat (limited to 'tests/ui/error-codes/E0063.rs')
-rw-r--r-- | tests/ui/error-codes/E0063.rs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/ui/error-codes/E0063.rs b/tests/ui/error-codes/E0063.rs new file mode 100644 index 000000000..48c9c13f0 --- /dev/null +++ b/tests/ui/error-codes/E0063.rs @@ -0,0 +1,38 @@ +struct SingleFoo { + x: i32 +} + +struct PluralFoo { + x: i32, + y: i32, + z: i32 +} + +struct TruncatedFoo { + a: i32, + b: i32, + x: i32, + y: i32, + z: i32 +} + +struct TruncatedPluralFoo { + a: i32, + b: i32, + c: i32, + x: i32, + y: i32, + z: i32 +} + + +fn main() { + let w = SingleFoo { }; + //~^ ERROR missing field `x` in initializer of `SingleFoo` + let x = PluralFoo {x: 1}; + //~^ ERROR missing fields `y` and `z` in initializer of `PluralFoo` + let y = TruncatedFoo{x:1}; + //~^ missing fields `a`, `b`, `y` and 1 other field in initializer of `TruncatedFoo` + let z = TruncatedPluralFoo{x:1}; + //~^ ERROR missing fields `a`, `b`, `c` and 2 other fields in initializer of `TruncatedPluralFoo` +} |