インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
バッファー・オーバーランを検出するコードを生成するかどうかを指定します。
Linux* および macOS*: | なし |
Windows*: | /GS[:keyword] /GS- |
keyword |
コンパイラーが使用するスタック保護ヒューリスティックのレベルを指定します。設定可能な値は以下のとおりです。
|
/GS- |
コンパイラーは、バッファー・オーバーランを検出しません。 |
このオプションは、関数のリターンアドレス、例外ハンドラーアドレス、または特定の種類のパラメーターを上書きするバッファー・オーバーランを検出するコードを生成するかどうかを指定します。
このオプションは、Microsoft* との互換性のために追加されました。
Visual Studio* 2008 以降、/GS オプションの Microsoft* 実装が拡張されました (例えば、より多くのルーチンが保護されるようになりました)。新しいヒューリスティックは、一部のプログラムのパフォーマンスに影響します。その場合、/GS:partial を指定することでパフォーマンスが向上する可能性があります。
/GS オプションの詳細は、Microsoft* のドキュメントを参照してください。
Visual Studio*: [Code Generation (コード生成)] > [Buffer Security Check (バッファー セキュリティー チェック)]
Eclipse*: なし
Xcode*: なし
Linux* および macOS*: -fstack-security-check
Windows*: なし