Rust errors / Names, paths and imports
Rust compiler error · checked with rustc 1.99.0
Rust error E0560: struct has no field named
What it meansA struct literal names a field the struct does not have.
What rustc prints
error[E0560]: struct `Simba` has no field named `father` --> main.rs:7:28 | 7 | let s = Simba { mother: 1, father: 0 }; | ^^^^^^ `Simba` does not have this field | = note: all struct fields are already assigned
Real output of rustc 1.99.0 compiling the official example below (2021 edition). Your names and line numbers will differ; the first line is the part to match.
Why it happens
- A typo, or a field renamed in a newer version of a crate.
How to fix it
1. Use the real field names
Your editor will list them; so will the help line.
let p = Point { x: 1, y: 2 };Other wordings of this error
struct has no field named
The compiler team's explanation
An unknown field was specified into a structure.
Erroneous code example:
struct Simba {
mother: u32,
}
let s = Simba { mother: 1, father: 0 };
// error: structure `Simba` has no field named `father`
Verify you didn't misspell the field's name or that the field exists. Example:
struct Simba {
mother: u32,
father: u32,
}
let s = Simba { mother: 1, father: 0 }; // ok!From rustc --explain E0560 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.
Related errors
Up next
Often hit nextE0425: cannot find value in this scopeA related error from the same family.Read it next →Did this answer your question?