GCCについて part9at TECHGCCについて part9 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト450:デフォルトの名無しさん 10/06/29 22:13:29 FreeBSDの人いる? gcc 4.5.0で-O2で最適化したら例外をキャッチできないケース見つけた。-O1だとOK。 再現できるか試して欲しい。 再現パターンはこんな感じ。 分岐の中にthrowがあって、最適化の結果throwにあたるコードが関数のエピローグコードの 後ろに移動してしまった場合にたまに発生。 bool flag = true; void f() { if(flag) throw 1; } int main() { try{ f(); }catch(...){ cout << "ok" << endl; } } 451:デフォルトの名無しさん 10/06/30 08:36:05 4.5.0 ということは ports ? 野良ビルド? 452:デフォルトの名無しさん 10/06/30 10:26:36 うん 453:デフォルトの名無しさん 10/06/30 10:40:31 結局どっちなんだよと思ったのは私だけじゃないはず 454:デフォルトの名無しさん 10/06/30 11:36:41 結局どっちなんだよ! 455:デフォルトの名無しさん 10/06/30 16:40:24 >>451 http://ftp.riken.go.jp/の.tbzと野良の両方で再現した。 ただ、OSXからのFreeBSDクロスコンパイル→転送して実行、ではAdaのほうでも再現したのに、 FreeBSD上のセルフコンパイルでは野良ではAdaでは再現しない(C++では再現、gcjはビルドできなかった……)と 結構ばらつく。よくわからん。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch