summaryrefslogtreecommitdiffstats
path: root/src/test/ui/error-codes/E0063.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/error-codes/E0063.rs')
-rw-r--r--src/test/ui/error-codes/E0063.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/test/ui/error-codes/E0063.rs b/src/test/ui/error-codes/E0063.rs
new file mode 100644
index 000000000..48c9c13f0
--- /dev/null
+++ b/src/test/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`
+}