みなさま

谷村と申します。

統計解析環境R (cran.r-project.org)のアドオンとして、主にローマ字化機能の実
装のために、kakasiのインターフェイスを含む日本語関連ユーティリティを作成し
ております。

http://cran.r-project.org/web/packages/Nippon/index.html

これまでの簡易な実装方法として、system()というOS呼出コマンドでRからkakasi
を呼び出して使うという方法をとっておりましたが、libkakasiとRを橋渡しするプ
ログラムを書くことによって、より安定化・高速化を図ることにしました。

Rの外部インターフェイスを書くには、2通りの実現方法があり、(1) libkakasiの
ヘッダファイルを事前に別途インストールした状態で、当該インターフェイスをコ
ンパイルする方法と、(2) インターフェイスのパッケージにlibkakasiのソースを
同梱する方法です。前者はR開発チーム側に、別途libkaksiをインストールしても
らえるように交渉する必要があり、なかなか難しく、後者を選択しました。

マルチプラットフォーム(Linux, MacOSX, Windows 32bit / 64bit)に対応するよう
にやっと漕ぎ着けて、新しいバージョンを投稿したのですが、私が手を入れていな
いlibkakasi自体にwarningがあると、不受理になりました。

具体的に指摘を受けたのは、libdict.cのcellalloc、libkakasi.cの
output_yomi_eachkanji、libbg2.cのg2aとg2jですが、他にもwarningが出ます。

libdict.c: In function 'cellalloc':
libdict.c:122:6: warning: cast from pointer to integer of different size 
[-Wpointer-to-int-cast]
libdict.c:122:34: warning: cast from pointer to integer of different size 
[-Wpointer-to-int-cast]

libdict.c: In function 'add_kanwa':
libdict.c:401:7: warning: ignoring return value of 'fread', declared with 
attribute warn_unused_result [-Wunused-result]

libdict.c: In function 'init_kanwa':
libdict.c:342:10: warning: ignoring return value of 'fread', declared with 
attribute warn_unused_result [-Wunused-result]

libkakasi.c: In function 'output_yomi_eachkanji':
libkakasi.c:843:13: warning: variable 'ret' set but not used 
[-Wunused-but-set-variable]

libkanjiio.c: In function 'getkanji':
libkanjiio.c:543:18: warning: variable 'mask' set but not used 
[-Wunused-but-set-variable]
libkanjiio.c:542:37: warning: variable 'l' set but not used 
[-Wunused-but-set-variable]

libkanjiio.c: In function 'pututf8':
libkanjiio.c:1063:36: warning: variable 'l' set but not used 
[-Wunused-but-set-variable]
libkanjiio.c: At top level:
libkanjiio.c:1078:1: warning: no previous prototype for 'close_iconv' 
[-Wmissing-prototypes]

libkanjiio.c: In function 'close_iconv':
libkanjiio.c:1080:18: warning: comparison between pointer and integer [enabled 
by default]
libkanjiio.c:1082:11: warning: assignment makes pointer from integer without a 
cast [enabled by default]
libkanjiio.c:1084:16: warning: comparison between pointer and integer [enabled 
by default]
libkanjiio.c:1086:9: warning: assignment makes pointer from integer without a 
cast [enabled by default]

libg2.c: In function 'g2a':
libg2.c:36:21: warning: array subscript is above array bounds [-Warray-bounds]

libg2.c: In function 'g2j':
libg2.c:54:19: warning: array subscript is above array bounds [-Warray-bounds]

インターフェイスパッケージに同梱したlibkakasiは2.3.5pre1-cvs20101217です。
なお、安定版だと開発版よりもさらにwarningが多い状況です。当該インターフェ
イスはGPL (>= 2) にしています。

以上が、Rのkakasiインターフェイスの進捗報告です。説明不足の所や、慣習や流
儀に反するところがあればご指摘ください。

ここからが、相談なのですが、私個人の力量ではこれらのwarningを解消する本質
的なコミットをすることができません。kakasi-devコミュニティでは、これらの
warningを潰す目算はあるのでしょうか。warningを潰す計画がなくても、これを要
望としてリストしていただくことは可能でしょうか。

よろしくお願いします。

別件ですが、http://kakasi.namazu.org/にあるkakasi-2.3.4-nodict.tar.gzはリ
ンク切れのようです。
_______________________________________________
Kakasi-dev mailing list
[email protected]
http://www.namazu.org/cgi-bin/mailman/listinfo/kakasi-dev

メールによる返信