I forgot to note this the last publically-visible struct which may be packed. Internals for the others are defined privately: $ pahole -P ruby rb_thread_struct 1016 1000 16 rb_execarg 160 152 8 io_internal_writev_struct 24 16 8 io_advise_struct 32 24 8 waitpid_arg 24 16 8 load_file_arg 48 40 8 rb_econv_t 200 184 16 rb_transcoder 160 152 8 rb_context_struct 1312 1304 8 rb_fiber_struct 2304 2296 8 parser_params 320 304 16