https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106335
Bug ID: 106335 Summary: struct copies with volatile fields are done using memcpy Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: segher at gcc dot gnu.org Target Milestone: --- struct s { volatile int x[42]; } a; void f(struct s b) { a = b; } results in machine code calling memcpy(), which is not valid.