rust/tests/ui/structs
Esteban Küber 2b2ea9e875 Provide structured suggestion for impl Default of type where all fields have defaults
```
error: `Default` impl doesn't use the declared default field values
  --> $DIR/manual-default-impl-could-be-derived.rs:28:1
   |
LL | / impl Default for B {
LL | |     fn default() -> Self {
LL | |         B {
LL | |             x: s(),
   | |                --- this field has a default value
LL | |             y: 0,
   | |                - this field has a default value
...  |
LL | | }
   | |_^
   |
help: to avoid divergence in behavior between `Struct { .. }` and `<Struct as Default>::default()`, derive the `Default`
   |
LL ~ #[derive(Default)] struct B {
   |
```

Note that above the structured suggestion also includes completely removing the manual `impl`, but the rendering doesn't.
2024-12-31 18:06:01 +00:00
..
auxiliary Move default-field-values tests into a subdirectory 2024-12-14 18:05:19 +00:00
default-field-values Make sure to use normalized ty for unevaluated const for default struct value 2024-12-14 18:05:19 +00:00
default-field-values-non_exhaustive.rs Restrict #[non_exaustive] on structs with default field values 2024-12-20 17:18:54 +00:00
default-field-values-non_exhaustive.stderr Restrict #[non_exaustive] on structs with default field values 2024-12-20 17:18:54 +00:00
field-implied-unsizing-wfcheck.rs Test more cases of WF-checking for fields 2024-08-05 17:56:50 -07:00
field-implied-unsizing-wfcheck.stderr Test more cases of WF-checking for fields 2024-08-05 17:56:50 -07:00
ice-struct-tail-normalization-113272.rs Handle normalization failure in struct_tail_erasing_lifetimes 2024-05-01 09:29:33 +05:30
ice-struct-tail-normalization-113272.stderr Handle normalization failure in struct_tail_erasing_lifetimes 2024-05-01 09:29:33 +05:30
incomplete-fn-in-struct-definition.rs
incomplete-fn-in-struct-definition.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-80853.rs
issue-80853.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
large-records.rs tests: remove //@ pretty-expanded usages 2024-11-26 02:50:48 +08:00
manual-default-impl-could-be-derived.rs Implement default_overrides_default_fields lint 2024-12-25 23:25:45 +00:00
manual-default-impl-could-be-derived.stderr Provide structured suggestion for impl Default of type where all fields have defaults 2024-12-31 18:06:01 +00:00
method-chain-expression-failure.rs
method-chain-expression-failure.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
multi-line-fru-suggestion.rs
multi-line-fru-suggestion.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
rhs-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-base-wrong-type.rs
struct-base-wrong-type.stderr
struct-duplicate-comma.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-duplicate-comma.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-duplicate-comma.stderr Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
struct-field-cfg.rs
struct-field-cfg.stderr add third help hint to diagnostic error E0027 2024-10-24 03:17:28 -04:00
struct-field-init-syntax.rs
struct-field-init-syntax.stderr Make parse error suggestions verbose and fix spans 2024-07-12 03:02:57 +00:00
struct-field-privacy.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-field-privacy.stderr
struct-fields-decl-dupe.rs
struct-fields-decl-dupe.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-dupe.rs
struct-fields-dupe.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-hints-no-dupe.rs
struct-fields-hints-no-dupe.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-hints.rs
struct-fields-hints.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-missing.rs
struct-fields-missing.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-shorthand-unresolved.rs
struct-fields-shorthand-unresolved.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-shorthand.rs
struct-fields-shorthand.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-too-many.rs
struct-fields-too-many.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fields-typo.rs
struct-fields-typo.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-fn-in-definition.rs
struct-fn-in-definition.stderr
struct-missing-comma.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-missing-comma.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-missing-comma.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-pat-derived-error.rs
struct-pat-derived-error.stderr add third help hint to diagnostic error E0027 2024-10-24 03:17:28 -04:00
struct-path-alias-bounds.rs
struct-path-alias-bounds.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
struct-path-associated-type.rs
struct-path-associated-type.stderr Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
struct-path-self-type-mismatch.rs
struct-path-self-type-mismatch.stderr
struct-path-self.rs
struct-path-self.stderr
struct-record-suggestion.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-record-suggestion.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-record-suggestion.stderr
struct-tuple-field-names.rs
struct-tuple-field-names.stderr add third help hint to diagnostic error E0027 2024-10-24 03:17:28 -04:00
struct-variant-privacy-xc.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
struct-variant-privacy-xc.stderr
struct-variant-privacy.rs
struct-variant-privacy.stderr
structure-constructor-type-mismatch.rs
structure-constructor-type-mismatch.stderr Revert suggestion verbosity change 2024-07-22 22:51:53 +00:00
suggest-private-fields.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
suggest-private-fields.stderr
suggest-replacing-field-when-specifying-same-type.rs
suggest-replacing-field-when-specifying-same-type.stderr add third help hint to diagnostic error E0027 2024-10-24 03:17:28 -04:00
unresolved-struct-with-fru.rs
unresolved-struct-with-fru.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00