So a struct that's supposed to be mutable can just never contain fields whose type has a lifetime parameter? In my particular case, it is even more frustrating, because all the (referenced) data is in fact owned by the same struct, and thus all of the lifetimes are more or less tied together (though obviously the compiler doesn't/cant't understand that). To continue with my abstract examples, imagine that the FromExternalLibrary struct actually looks like this: pub struct FromExternalLibrary<...