私はサードパーティのライブラリ(これは私がデバッグしたくない)からこの警告を受けているので、この特定の警告を抑制する方法。 Googleは私に失敗したので、ここにいる。GCCの "enumeral type and non-enumeral type in GCC"を抑制する方法
答えて
次のフラグはその警告を取り除きませんか?
-Wno-enum-promotion
この特定の警告を無効にする方法が見つからなかったので、gccの#pragma system_headerを使用しました。基本的に、私はこのような問題のあるヘッダーをラップしました。
ここで、foo.hは問題のあるヘッダーでした。今私はこのfooWrapper.hをインクルードするだけで問題はなくなります。これは他のコンパイラ(MSCとSUNPRO)でも動作するはずですが、テストしませんでした。
Thanxには載っていませんが、この '#pragma GCC system_header'は私をたくさんの意味のない警告から救ってくれました。 –
-Wno-enum-compare
は、この警告を無視します。
以降、あなたはすなわち、特定の警告を抑制し、唯一のコードの特定のブロックにその抑制を行うには、プラグマのを使用することができます。
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wno-enum-compare"
// Code that causes warning goes here
#pragma GCC diagnostic pop
プッシュ/ポップが使用されていますコードが処理される前の診断オプションを保持します。
これは、すべての警告を抑制するために#pragma GCC system_header
を使用するよりはるかに優れたアプローチです。 (!もちろん、古いGCCにあなたが#pragma GCC system_header
アプローチで「立ち往生」であってもよい)
ここではgccの警告を抑制する上の素敵なリファレンスです:http://www.dbp-consulting.com/tutorials/SuppressingGCCWarnings.html
このページには、どのようなオプションを見つけるために-fdiagnostics-show-option
を使用する方法について説明します特定の警告を制御します。
もちろん、すべての警告の根本原因を抑止するよりも、これは一般的にははるかに好ましい方法です。しかし、時にはそれは不可能です。
- 1. EclipseのサードパーティソースコードからのGCC警告を抑制する方法
- 2. ライブラリヘッダーからのGCC警告を抑制する方法は?
- 3. gcc assemblyコマンド(.type)の使い方は?例えば
- 4. デフォルトのGCCコンパイラオプションを抑制する方法はありますか?
- 5. Variant Type in C#
- 6. GCC:警告を修正または抑制する方法:未知のエスケープシーケンス: '\#'
- 7. gccを抑制する4.2.1プラグマによる警告
- 8. コンパイル時のテンプレートエラーのテンプレート拡張を抑制するgccコンパイラフラグ?
- 9. gcc:抑制する[デフォルトで有効] C++コードからの警告
- 10. Reason Typeフィールドin domcfg
- 11. order of()in return type()in R
- 12. Archlinuxのgcc 7.2でgcc 6.4.0をコンパイルする方法
- 13. EqualityComparer <Type> GetHashCode and Equals
- 14. Deleter type in unique_ptr vs. shared_ptr
- 15. TypeError:unhashable type: 'list' in my dictionary
- 16. java swingでJFormattedTextFieldのINPUTのTYPEを制限する方法は?
- 17. achartengine switch chart type in view
- 18. <input type = "number">の科学記法を抑制する方法はありますか?
- 19. System.Double type in Windows.Foundation.Size.Width/.Height on WinRT
- 20. @Field type in spring-data-couchbase2.1.1Release
- 21. GCCの下で 'ブール'のサイズを強制する方法
- 22. メソッド/コンストラクタの 'Type'パラメータを制限する
- 23. Chrome type = "date" and jquery ui date picker clashing
- 24. 'type()'レポートをオーバーライドする方法
- 25. GCCコンパイラエラー
- 26. ライブラリを構築しようとしていて、次の警告が表示されます。警告:ビットフィールドのタイプ 'type'はGCC拡張です。[-Wpedantic] uint8_t type:1;
- 27. gcc with gcc 4.4.3
- 28. GCCリンカーコマンドの入手方法?
- 29. GCCクロスコンパイラのコンパイル方法は?
- 30. 定義されていないメッセージ警告を抑制するClangおよびgccオプション?
いいえ。実際、gccはこのオプションを認識していないようです。このオプションについてはどこで知りましたか?それはhttp://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html –