The latter is preferable since it is in the standard-library and a compiler builtin. I think there are some safety issues with the current implementation of `field_offset!`. However this is blocked on the [`offset_of_nested` feature](https://github.com/rust-lang/rust/issues/120140).