既定で無効になっているコンパイラの警告
コンパイラには、既定でオフになっている警告が用意されています。警告が既定でオフになっている場合、ほとんどのユーザーはその警告を参照しません。ただし、次のオプションの 1 つを使用してこのような警告を有効にできます。
#pragma warning(default : warning_number)
指定された警告 (warning_number) は既定のレベルで有効になっています。警告に関するドキュメントには、既定のレベルの警告が記載されています。#pragma warning(warning_level : warning_number)
指定された警告 (warning_number) は指定されたレベル (warning_level) で有効になっています。/Wall
/Wall は既定では無効のすべての警告を有効にします。
既定では、次の警告はオフになっています。
C4061 (レベル 4) |
switch 中の 'identifier' ('enumeration' の) は case ラベルに与えられません。 |
C4062 (レベル 3) |
switch 中の 'identifier' ('enumeration' の) は与えられません。 |
C4191 (レベル 3) |
"operator/operation": "式の種類" から "必要な型" への安全でない変換 |
C4242 (レベル 4) |
'identifier': 'type1' から 'type2' に変換しました。データが失われている可能性があります。 |
C4254 (レベル 4) |
'operator': 'type1' から 'type2' への変換です。データが失われる可能性があります。 |
C4255 (レベル 4) |
'function': 関数プロトタイプがありません: '()' を '(void)' に変換します。 |
C4263 (レベル 4) |
'function': メンバー関数はどの基本クラスの仮想メンバー関数もオーバーライドしません |
C4264 (レベル 1) |
'virtual_function': 仮想メンバー関数用に基本クラス 'class' から使用可能なオーバーライドはありません; 関数は隠されます。 |
C4265 (レベル 3) |
'class': クラスは仮想関数を含んでいますが、デストラクターは仮想デストラクターではありません。 |
C4266 (レベル 4) |
'function': 仮想メンバー関数用に基本クラス '型' から使用可能なオーバライドはありません。関数は隠されます。 |
C4287 (レベル 3) |
'operator': 符号なしまたは負の定数が一致していません。 |
C4289 (レベル 4) |
非標準の拡張が使用されています : 'var' : for ループで宣言したループ コントロール変数が for ループ スコープの外側で使用されています。 |
C4296 (レベル 4) |
'operator': 式は常に false です。 |
C4302 (レベル 2) |
'変換': 'type1' から 'type2' へ切り詰めます。 |
C4350 (レベル 1) |
動作変更: 'member1' が 'member2' の代わりに呼び出されました。 |
'this' : ベース メンバー初期化リストで使用されました。 |
|
C4365 (レベル 4) |
'action': 'type_1' から 'type_2' に変換しました。signed/unsigned が一致しません。 |
C4412 (レベル 2) |
'function': 関数のシグネチャが型 '型' を含んでいます。C++ オブジェクトを、純粋なコードと混合またはネイティブ コードとの間で渡すことは安全ではありません。 |
C4431 (レベル 4) |
型指定子がありません - int と仮定しました。メモ: C は、現在 int を既定値としてサポートしていません |
C4435 (レベル 4) |
" class1 ": /vd2 の下のオブジェクトのレイアウトは、仮想基本 " class2 " が原因で変更します |
C4437 (レベル 4) |
仮想基本 " class1 " から " class2 " への dynamic_cast は、状況によっては失敗する |
C4514 (レベル 4) |
'function': 参照されていないインライン関数は削除されました |
C4536 (レベル 4) |
'type name': 型名がメタデータの限度である 'limit' 文字を超えています。 |
C4545 (レベル 1) |
コンマ前の式は、引数リストのない関数として評価します |
C4546 (レベル 1) |
コンマの前の関数呼び出しに引数一覧がありません。 |
C4547 (レベル 1) |
'operator': コンマの前の演算子は無効です。有効な演算子を指定してください。 |
C4548 (レベル 1) |
コンマ前の式は無効です。有効な式を指定してください。 |
C4549 (レベル 1) |
'operator': コンマの前の演算子は無効です。候補 'operator' |
C4555 (レベル 1) |
式の影響はありません; 式の副作用が必要です。 |
C4557 (レベル 3) |
'__assume' は影響 'effect' を含んでいます。 |
C4571 (レベル 4) |
情報: catch(...) の意味が Visual C++ 7.1 から変更されています。構造化例外 (SEH) はキャッチされません。 |
C4619 (レベル 3) |
#pragma warning: 警告番号 'number' がありません。 |
C4623 (レベル 4) |
'derived class': 基本クラスの既定コンストラクターにアクセスできないため、既定のコンストラクターは生成できませんでした |
C4625 (レベル 4) |
'derived class': 基本クラスのコピー コンストラクターにアクセスできないため、コピー コンストラクターは生成できませんでした |
C4626 (レベル 4) |
'derived class': 基本クラスの代入演算子にアクセスできないため、代入演算子は生成できませんでした |
C4628 (レベル 1) |
digraphs は -Ze でサポートされていません。文字のシーケンス 'digraph' は 'char' の代替トークンとして解釈されません。 |
C4640 (レベル 3) |
'instance': ローカル スタティック オブジェクトの構築がスレッド セーフではありません |
C4641 (レベル 3) |
XML ドキュメント コメントはあいまいな相互参照を含んでいます |
C4668 (レベル 4) |
'symbol' は、'directives' を '0' に置換するプリプロセッサ マクロとして定義されていません。 |
C4686 (レベル 3) |
'ユーザー定義型': 動作と UDT の戻り値の呼び出し規約に変更がある可能性があります。 |
C4692 (レベル 1) |
'関数': 公開されたメンバーのシグネチャはアセンブリ プライベート ネイティブ型 'native_type' を含んでいます |
C4710 (レベル 4) |
'function': インライン関数ではありません |
C4711 (レベル 1) |
関数 'function' にインライン展開を選択しました。 |
C4738 (レベル 3) |
メモリに 32 ビットの浮動結果を格納します。パフォーマンスが低下する可能性があります |
C4820 (レベル 4) |
'バイト' : 'バイト' バイトのパディングを 'コンスラクト' 'member_name' の後に追加しました。 |
C4826 (レベル 2) |
'type1' から 'type2' への変換は符号拡張されています。これは、予期しない実行時の動作を発生させる可能性があります。 |
C4836 (レベル 1) |
非標準の拡張機能が使用されています : '型' : ローカル型または名前のない型を 'テンプレート' 引数として使用することはできません |
C4837 (レベル 4) |
検出されたトライグラフ: '??%c' は '%c' に置き換えられました |
C4905 (レベル 1) |
'LPSTR' にキャストされた幅の広いリテラル文字列 |
C4906 (レベル 1) |
'LPWSTR' にキャストされたリテラル文字列 |
C4917 (レベル 1) |
'declarator': GUID はクラス、インターフェイス、または名前空間のみに関連付けることができます |
C4928 (レベル 1) |
コピー初期化が正しくありません。複数のユーザー定義の変換が暗黙的に適用されています。 |
C4931 (レベル 4) |
number ビット ポインター用にタイプ ライブラリがビルドされていることを想定します。 |
C4946 (レベル 1) |
reinterpret_cast が関連クラスの間で使用されました : 'class1' と 'class2' |
C4962 |
'function': 最適化によってプロファイル データに矛盾が生じたため、ガイド付き最適化のプロファイルを無効にします |