| //@ revisions: enabled disabled |
| //@[enabled] run-rustfix |
| #![allow(private_interfaces, dead_code)] |
| #![cfg_attr(enabled, feature(default_field_values))] |
| use m::S; |
| |
| mod m { |
| pub struct S { |
| pub field: () = (), |
| //[disabled]~^ ERROR default values on fields are experimental |
| pub field1: Priv = Priv, |
| //[disabled]~^ ERROR default values on fields are experimental |
| pub field2: Priv = Priv, |
| //[disabled]~^ ERROR default values on fields are experimental |
| } |
| struct Priv; |
| } |
| |
| fn main() { |
| let _ = S { .. }; // ok |
| //[disabled]~^ ERROR base expression required after `..` |
| let _ = S { field: (), .. }; // ok |
| //[disabled]~^ ERROR base expression required after `..` |
| let _ = S { .. }; |
| //~^ ERROR missing fields `field`, `field1` and `field2` |
| let _ = S { field: (), .. }; |
| //~^ ERROR missing fields `field1` and `field2` |
| } |