最近さぼり気味ですが、hash.c (Env 関連含む) 、time.c 、proc.c 、re.c を書いて、現在 80.42% です。目標には到達。ただ、テストが書きにくい M17N 関係のソース (enc/ ディレクトリ以下) を計算に入れてなくて、これらも入れると 78.98% です。
鬼車 (reg*.c) のテストもなかなか難しいですね。Ruby では使われない機能 (Perl 用の \Q \E とか) があったり、コメントが少なくて読みにくかったり、僕が正規表現を知らなすぎたり。
91.79% (1062 of 1157) array.c 92.98% (1113 of 1197) bignum.c 0.00% (0 of 135) blockinlining.c 88.51% (339 of 383) class.c 82.46% (47 of 57) compar.c 84.88% (1903 of 2242) compile.c 96.17% (251 of 261) cont.c 0.00% (0 of 26) debug.c 79.77% (548 of 687) dir.c 69.88% (58 of 83) dln.c 100.00% (2 of 2) dmyext.c 81.39% (433 of 532) encoding.c 99.82% (552 of 553) enum.c 98.87% (175 of 177) enumerator.c 79.68% (443 of 556) error.c 81.34% (837 of 1029) eval.c 67.97% (104 of 153) eval_error.c 70.40% (88 of 125) eval_jump.c 82.95% (219 of 264) eval_method.c 64.44% (29 of 45) eval_safe.c 87.98% (1061 of 1206) file.c 80.15% (634 of 791) gc.c 98.53% (936 of 950) hash.c 100.00% (39 of 39) id.c 100.00% (43 of 43) inits.c 66.36% (1653 of 2491) io.c 41.20% (241 of 585) iseq.c 79.57% (257 of 323) load.c 100.00% (6 of 6) main.c 87.42% (681 of 779) marshal.c 98.69% (151 of 153) math.c 100.00% (3 of 3) miniprelude.c 96.20% (961 of 999) numeric.c 82.98% (580 of 699) object.c 98.87% (872 of 882) pack.c 74.90% (191 of 255) parse.c 96.00% (24 of 25) prec.c 100.00% (4 of 4) prelude.c 95.32% (509 of 534) proc.c 51.15% (444 of 868) process.c 88.89% (160 of 180) random.c 99.13% (340 of 343) range.c 96.30% (1275 of 1324) re.c 80.87% (1881 of 2326) regcomp.c 43.52% (131 of 301) regenc.c 44.10% (71 of 161) regerror.c 66.08% (869 of 1315) regexec.c 76.02% (1940 of 2552) regparse.c 0.00% (0 of 44) regsyntax.c 59.16% (368 of 622) ruby.c 70.19% (226 of 322) signal.c 97.30% (432 of 444) sprintf.c 79.70% (267 of 335) st.c 90.90% (2527 of 2780) string.c 94.92% (299 of 315) struct.c 81.58% (837 of 1026) thread.c 79.65% (137 of 172) thread_pthread.c 75.72% (602 of 795) time.c 89.66% (208 of 232) transcode.c 56.37% (677 of 1201) util.c 76.62% (652 of 851) variable.c 56.25% (9 of 16) version.c 82.58% (659 of 798) vm.c 0.00% (0 of 193) vm_dump.c 100.00% (8 of 8) vm_evalbody.c 90.69% (565 of 623) vm_insnhelper.c 3.23% (1 of 31) enc/big5.c 3.23% (1 of 31) enc/cp949.c 59.34% (54 of 91) enc/euc_jp.c 3.57% (1 of 28) enc/euc_kr.c 64.71% (22 of 34) enc/euc_tw.c 0.62% (1 of 160) enc/gb18030.c 100.00% (3 of 3) enc/gb2312.c 45.16% (14 of 31) enc/gbk.c 1.27% (1 of 79) enc/iso_8859_1.c 5.26% (1 of 19) enc/iso_8859_10.c 20.00% (1 of 5) enc/iso_8859_11.c 5.26% (1 of 19) enc/iso_8859_13.c 5.26% (1 of 19) enc/iso_8859_14.c 5.26% (1 of 19) enc/iso_8859_15.c 5.26% (1 of 19) enc/iso_8859_16.c 5.26% (1 of 19) enc/iso_8859_2.c 5.26% (1 of 19) enc/iso_8859_3.c 5.26% (1 of 19) enc/iso_8859_4.c 7.14% (1 of 14) enc/iso_8859_5.c 20.00% (1 of 5) enc/iso_8859_6.c 7.14% (1 of 14) enc/iso_8859_7.c 20.00% (1 of 5) enc/iso_8859_8.c 5.26% (1 of 19) enc/iso_8859_9.c 7.14% (1 of 14) enc/koi8_r.c 7.14% (1 of 14) enc/koi8_u.c 54.44% (49 of 90) enc/shift_jis.c 65.00% (39 of 60) enc/utf_16be.c 24.14% (14 of 58) enc/utf_16le.c 2.86% (1 of 35) enc/utf_32be.c 2.86% (1 of 35) enc/utf_32le.c 7.14% (1 of 14) enc/windows_1251.c 55.56% (60 of 108) enc/trans/japanese.c 100.00% (6 of 6) enc/trans/korean.c 100.00% (34 of 34) enc/trans/single_byte.c 96.80% (121 of 125) enc/trans/utf_16_32.c 78.98% (33073 of 41873) total