ページの先頭です。
ここから本文です。

よくあるご質問(サポートFAQ)

【HP ANSI C++/C】コンパイルオプション+Olitの既定値変更

質問内容

HP-UX 11i v2で正常に動作していたプログラムが、HP-UX 11iv3環境下でcoreダンプしました。

coreをgdbで解析しましたが、SIGSEGV(SEGV_ACCERR)が発生しており、文字列リテラルが割当てられている領域(読込専用領域)を操作しようとしたために、core dumpしたようです。

対処方法を教えてください。

回答内容

コンパイラバージョンA.06.15 からコンパイルオプションの既定値が +Olit=const から+Olit=all に変わり、読込専用領域となる範囲が広がりました。このため、コンパイラバージョンA.06.15より前では読込専用領域ではなかった文字列リテラルが、コンパイラバージョンA.06.15以降では読込専用領域となります。

+Olit=const を指定し、コンパイルすることで、HP-UX 11i v2と同様の動作となります。

【確認済みの対象OS】HP-UX IPF 11iv3
【カテゴリー】トラブルシューティング

製品名カテゴリ

HP ANSI C++/C

  • コンテンツID: 3150109412
  • 公開日: 2015年02月25日
  • 最終更新日:2015年02月25日

アンケート

サポート情報充実のためアンケートにご協力をお願いいたします。



コメント欄:
ここからページ共通メニューです。 ページ共通メニューを読み飛ばす。