K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]

新規投稿 | 開設者ホームページへ戻る | ヘルプ

[1853] Re:crowbar ver2のnative pointerについて
投稿者:hiro
2013/01/11 08:12:26

管理人様 ご回答ありがとうございます.下記了解いたしました. >ちょっとありえないミスです。申しわけございませんでした。 >該当の実装は、以下で正しいです。 > >>気になって探してみたところ,ver.4のソースコードに >> >>struct CRB_Object_tag { >> ObjectType type; >> unsigned int marked:1; >> union { >> CRB_Array array; >> CRB_String string; >> CRB_Assoc assoc; >> ScopeChain scope_chain; >> NativePointer native_pointer; >> } u; >> struct CRB_Object_tag *prev; >> struct CRB_Object_tag *next; >>}; > >ご報告いただきありがとうございました。週末あたりに正誤表に入れさせて >いただきます。 ありがとうございます.ミスを全部潰すのは大変ですよね... 私もまだver.2までしか進んでいませんが,大変勉強になっています.ありがとうございます. また,もう一点気がついたことがあるので報告させて頂きます. util.cに,crb_get_operator_string関数があるかと思います. 以下のようなコードになっているのですが, --------------------------------------------- char *str switch(type) { case XXX_EXPRESSION: str = "文字列" } return str; --------------------------------------------- これだと,リターンされる文字列は自動変数なので,関数を抜けたらメモリが開放されるため,バグになる可能性があるのではないでしょうか? char *op_str = crb_get_operator_string(operator); こんな風に使っているので... ちなみに,実際にバグが起こっているわけではありません(エラー処理に使っているので,実際には実行されない).
[この投稿を含むスレッドを表示] [この投稿を削除]