まつもと ゆきひろです.

パッケ−ジングに忙しくしています.
# でもそうそうにバグの予感.

In message "[ruby-list:1481] 例外"
    on 96/12/25, Sinichiro Dezawa <dezawa / miya.fujifilm.co.jp> writes:
|
|出沢です
|
|/dsk1a/home-sys/dezawa/bin/wmrflow:125: [BUG] Segmentation fault
|Abort (core dumped)
|
|こんなんなっちゃうんです。

うーん,直接的な原因は良く分かんないんですけど,根本の原因は

|	class Read_FILE <File

にあると思います.検出できないrubyが馬鹿なんですけど.これやっ
ちゃうとクラスはIOのサブクラスでインスタンスの構造が通常オブ
ジェクトと同じ,というインスタンスができちゃいます.これで
rubyのビルトインメソッドが発狂してしまうのではないかと想像し
ます.

|質問1
|   これはトラップできますか?  可能なら処理終了最後の行番号を
|   表示してこけたい。

[BUG]とでるのはバグですからトラップできません.例外だったら
良かったんですけどねえ.

|質問2
|   debug 用に print を入れようと思ったのですが、class のmethod の
|   中で使うと
|	wmrflow:92:in `print': not opened for writing
|   と言われる事があります。

Fileのサブクラス内ではprintは使えません.デバッグ用には p を
使ってください.

  p bufline

で,それなりの表示が行われるはずです.
# でもFileのサブクラスは作らないでくださいね.


ついでにいうとrubyにおける継承は構造と仕様と両方を取り込んで
きちゃいますから,既存のクラスを継承するのではなく,自分でク
ラスツリーを作っちゃうのがrubyでしょう.

# この件はすくなくとも検出はできるようにしたいですね.

                                まつもと ゆきひろ /:|)