最適化をオフにしてビルドしない限り、クラッシュするコードのチャンクがあります。LLVMコンパイラ2.0でビルドしています
問題のあるコードを#pragmaコンパイラ指令でラップして最適化をオフにしたいと思います。または、ファイル全体の最適化をオフにします。
私はclangのマニュアルとコードを掘り下げてきました。しかし、私には何も飛び出しません。
(アプリ全体ではなく)単一のCUの最適化を変更する方法を知っている人はいますか?
Xcodeでファイルごとのコンパイラフラグを設定できます。Xcode 4(LLVM 2.0リファレンスのために使用していると思います)では、最初に左側のプロジェクトブラウザーでプロジェクトを選択します。[ビルドフェーズ]タブに移動し、[ソースのコンパイル]ビルドフェーズを展開します。
そこで、ファイルごとのコンパイラフラグを設定できるため、問題のあるファイルに移動-O0し、フラグとして入力して、そのファイルのみの最適化を無効にすることができます。
Johannesがここでの回答で指摘しているように、GCCにはこれに設定できるいくつかの属性がありますが、これらはLLVMにはない可能性があります。また、そこにあるコメントから、これらはiOSアプリケーションの構築に使用されるAppleのカスタマイズされたGCCにも含まれていないようです。