Ruby 2.3.0 リファレンスマニュアル > 関数一覧 > ruby_xmalloc
void * ruby_xmalloc(long size)
引数と返り値は malloc() と同じ。 ただしメモリ割り当てに失敗したときは GC を行いそれでもだめなときは NoMemoryError を raise する。 つまりこの関数が返り値を返したときは常に割り当ては成功している。