新しいXcode 7のApple docsでランタイムサニタイズについて読んだので、それを探して無効になっていることがわかりました。私はXcode 7 GMシードを使用しています。Xcode 7で「アドレスサニタイザを有効にする」が無効になっているのはなぜですか?
私はスキームの実行行為に入る> [診断]タブ、Enable Address Sanitizer
オプションが無効になっている:
disbledされているか、他のオプションに関するいくつかの説明が、なぜのは言及しないがありますサニタイズオプションが無効になります。
診断ツールの中には、他の診断ツールと組み合わせて使用するものもあります。診断ペインで使用可能なオプションは、オプションの組み合わせを選択するのに役立つさまざまなオプションが選択されるため、有効または無効になります。
-fsanitize=address
:例えば、消毒剤や他のアドレスを有効にするには、互換性のないツールが無効になっているとClang 3.8 documentation for Addresssanitizerを見てみると
を選択することはできません、それはまた、フラグを追加することにより、有効にすることができるように、それが見えます。しかし、ビルド設定でこのフラグを使用する場所は、スキームのチェックボックスオプションとして存在するため、謎であり疑問です。
はまた、このSO answerを見つけたが、それはあなたが現在警備隊のmalloc使用して消毒一緒にアドレスすることはできません2013
すでに「Enable Guard Malloc」が選択されていて、選択を解除するとは考えていませんでした。ありがとう! – Sheamus
次のいずれかのオプションを有効にすると、Address Sanitizerを使用できなくなります.Malloc Scribbleを有効にし、Malloc Guard Edgeを有効にし、Guard MallocとMalloc Stackを有効にします。 Address Sanitizerを有効にするには、これらのオプションをすべてオフにする必要があります。 – Dalzhim
これはなぜですか? – jcanizales