A type with a `Drop` implementation was destructured when trying to initialize a static item. Erroneous code example: ```compile_fail,E0493 enum DropType { A, } impl Drop for DropType { fn drop(&mut self) {} } struct Foo { field1: DropType, } static FOO: Foo = Foo { ..Foo { field1: DropType::A } }; // error! ``` The problem here is that if the given type or one of its fields implements the `Drop` trait, this `Drop` implementation cannot be called during the static type initialization which might cause a memory leak. To prevent this issue, you need to instantiate all the static type's fields by hand. ``` enum DropType { A, } impl Drop for DropType { fn drop(&mut self) {} } struct Foo { field1: DropType, } static FOO: Foo = Foo { field1: DropType::A }; // We initialize all fields // by hand. ```