メッセージ オプション

提供: RAD Studio
移動先: 案内検索

コマンドライン ユーティリティ:インデックス への移動

-w オプションを使って、C++ コンパイラ(BCC32.exe)のメッセージ オプションを指定することができます。

  • 特定の警告メッセージを有効にするには、-w オプションと 1 ~ 3 文字のオプション コードを入力します。
  • 警告メッセージを無効にするには、-w- オプションと 1 ~ 3 文字のオプション コードを入力します。

すべての警告メッセージおよびエラー メッセージを表示するには、BCC32 コマンドに -w コマンド オプションを指定します。

>bcc32 ... -w

警告 "異なる 'char' 型へのポインタが混在している"(オプション コード ucp、デフォルトではオフ)を表示させるには、BCC32 コマンドに次のフラグを指定します。

-wucp

警告 "宣言を無視した"(オプション コード dig、デフォルトではオン)を表示させないようにするには、BCC32 コマンドに次のフラグを指定します。

-w-dig

警告メッセージ コードについてのヘルプを表示するには、コンパイラ コマンドに -h と -w のオプションだけを付けて入力します。

C:>bcc32 -h -w

C:\Program Files (x86)\Embarcadero\Studio\20.0\bin>bcc32 -h -w
Embarcadero C++ 6.40 for Win32 Copyright (c) 1993-2011 Embarcadero Technologies,  Inc.
使用できるオプション (* はデフォルトの設定。xxx はサブオプションで、-h -X などで表示):
(メモ: -X- または -w-XXX を指定すると、通常、-X または -wXXX による設定または設定解除が取り消されます。

 2 つのオプションが競合する場合は、最後に指定されたものが使用されます。)
  -w      すべての警告を表示します
  -w!     警告時にコンパイラから非 0 を返す
  -wamb   8000 あいまいな演算子にはカッコが必要
  -wamp   8001 関数に対する余分な &
* -wasc   8002 アセンブラを使うためコンパイルを再起動した
  -wasm   8003 認識できないアセンブラ命令
* -waus   8004 '%s' に代入した値は使われていない
* -wali   8086 #pragma alias "aliasName"="substituteName" の使い方が間違っています
* -watr   8100 属性指令 '%s' は無視されました
* -watr   8110 重複する '%s' 属性指令は無視されました
* -wadt   8134 Delphi 形式のクラス '%s' の配列を割り当てられません
  -wbbf   8005 ビット フィールドは signed int か unsigned int でなければならない
* -wbei   8006 %s を %s で初期化している
* -wbig   8007 16 進値の桁数が多すぎます
  -wbex   8120 dllexport クラスの基底クラスも dllexport でなければなりません
  -wbcx   8126 エクスポートされたクラスの基底クラスにはエクスポートされたコンストラクタが必要です
* -wccc   8008 条件が常に %s
  -wcln   8009 定数が長すぎる
* -wcom   8010 継続記号 \ が // コメント内に見つかった
* -wcpt   8011 移植性のないポインタ比較
* -wcsu   8012 符号付き値と符号なし値の比較
* -wcod   8093 #pragma codeseg [seg_name] ["seg_class"] [group] の使い方が間違っています

* -wcni   8108 新しい式の定数には初期化子が必要
  -wdef   8013 '%s' は定義の前に使用されている可能性があります
* -wdig   8014 宣言を無視した
* -wdpu   8015 プロトタイプで使われる前に '%s' の宣言が必要
* -wdsz   8016 'delete' に指定した配列サイズは無視される
* -wdup   8017 マクロ '%s' の重複定義
  -wdep   8106 %s の使用は推奨しない
  -wdtp   8109 パラメータ '%s' は依存型です
* -wdpr   8111 非推奨のエンティティ '%s' %s にアクセスしている
* -wdex   8112 式の依存関係を解決できない
* -wdlx   8127 関数が宣言とは異なるリンケージで定義されました
* -wdim   8128 定義中の関数はインポートできません
  -wdgu   8129 インターフェイス '%s' に GUID がありません
* -wdiu   8130 インターフェイス '%s' が IUnknown から派生していません (インターフェイスは
IUnknown から派生する必要があります)。
* -wdin   8131 Delphi 形式のクラス '%s' をインターフェイスにキャストしようとしています。代わりに 'System::int
erface_cast<%s>(cls)' を使用してください
* -wdns   8139 declspec '%s' のサポートが実装されていません。
* -weas   8018 列挙型 '%s' に '%s' 型が代入された
* -weff   8019 コードは効果を持たない
* -wext   8020 '%s' が external と static の両方で宣言されている
  -wexc   8101 extern C リンケージは無視されました
* -weoi   8125 DLLExport が前の DLLImport をオーバーライドしています
* -whch   8021 '%s' のハンドラが直前のハンドラ '%s' で隠されている
* -whid   8022 '%s' が仮想関数 '%s' を隠蔽する
* -wias   8023 配列変数 '%s' は near に置かれる
* -wibc   8024 基底クラス '%s' は '%s' の中にもあるのでアクセスできない
* -will   8025 pragma の書式が正しくない
  -winl   8026 %s はインライン展開されない
  -winl   8027 %s を含む関数はインライン展開できない
* -wifr   8085 関数 '%s' が非インライン関数として再定義された
  -wimp   8102 '%s' から '%s' への暗黙の型変換です
* -wiex   8113 インライン関数が 'extern template' で宣言されている
* -winc   8115 定数式が必要です。ステートメントは無視されました
* -wiip   8118 Package クラスのインライン メンバ関数
  -wiac   8121 現在のテキスト ロケール %s のソース コードに無効な文字が見つかりました
* -wind   8132 インターフェイス '%s' を Delphi 形式のクラスにキャストしようとしています。代わりに 'System::interface_cast<%s>(intf)' を使用してください
* -witl   8136 このプラットフォームでは TLS データの初期化はサポートされていません
* -wlin   8028 '%s' を初期化するために一時変数を使用する
* -wlvc   8029 '%s' パラメータのために一時変数を使用する
* -wlvc   8030 '%s' パラメータ ('%s') のために一時変数を使用する
* -wlvc   8031 %d 番目のパラメータのために一時変数を使用する
* -wlvc   8032 %d 番目のパラメータ ('%s') のために一時変数を使用する
* -wmpc   8033 '%s' への変換は仮想基底クラス '%s' のメンバに対しては行えない
* -wmpd   8034 メンバ ポインタ型 '%s' を最大精度にした
* -wmsg   8035 %s
* -wmes   8095 #pragma message( "string" ) の使い方が間違っています
* -wmcs   8096 #pragma code_seg(["seg_name"[,"seg_class"]]) の使い方が間違っています
* -wmcc   8098 複数文字による文字定数
* -wmls   8104 マルチスレッド アプリケーションのコンストラクタでローカル静的変数を使うことは危険
* -wmnc   8105 %s メンバ '%s' があるクラスにコンストラクタがない
* -wmal   8119 アラインメントが最大 %d に縮小されました
  -wmtx   8122 dllexport クラス メンバ '%s' はエクスポートされた型でなければなりません
  -wnak   8036 ANSI にはないキーワード '%s' が使われた
* -wncf   8037 const オブジェクトに対して非 const 関数 %s が呼ばれた
* -wnci   8038 定数メンバ '%s' は初期化されていない
* -wncl   8039 コンストラクタ初期化リストを無視した
* -wnfd   8040 関数本体を無視した
* -wngu   8041 符号なし値の否定の演算
* -wnin   8042 オブジェクト '%s' の初期化部分を無視した
* -wnma   8043 マクロ定義を無視した
* -wnmu   8044 #undef 指令は無視されました
  -wnod   8045 '%s' の宣言がない
* -wnop   8046 #pragma option pop に対応する #pragma option push が見つからない
* -wnsf   8047 静的関数 '%s(...)' 宣言を無視した
* -wnst   8048 メンバ型 '%s' へのアクセスには限定名が必要
* -wntd   8049 ネストしたテンプレートでは '>>' のかわりに '> >' を使用すべき
* -wnto   8050 型 OBJ ファイルが存在しない。外部型オプションは使用しない
* -wnvf   8051 volatile オブジェクトに対して非 volatile 関数 %s が呼び出された
* -wnpp   8083 #pragma pack pop と一致する #pragma pack push がない
  -wntn   8107 型名が必要です
* -wnrm   8124 公開メソッド '%s' で公開できないパラメータまたは戻り値の型を参照しています
* -wobi   8052 クラス名のない基底クラスの初期化は古い形式である
* -wobs   8053 '%s' は古い形式である
* -wofp   8054 関数定義の形式は古い形式である
* -wosh   8055 シフト演算のオーバーフロー
* -wovf   8056 整数の算術オーバーフロー
* -wonr   8097 一部のオプションは復元できない
* -wpar   8057 パラメータ '%s' は一度も使用されない
* -wpch   8058 %s プリコンパイル ヘッダーを作成できない
* -wpck   8059 構造体のパッキング サイズが変更された
* -wpia   8060 おそらく不正な代入
  -wpin   8061 初期化の一部だけにカッコがついている
* -wpow   8062 オプションと警告を元に戻せない
* -wpre   8063 オーバーロードされた前置演算子 'operator %s' が後置演算子として使われている
* -wpro   8064 プロトタイプ宣言のない関数の呼び出し
* -wpro   8065 プロトタイプ宣言のない関数 '%s' の呼び出し
  -wprc   8084 優先順位を明確にするためにカッコの使用を推奨
* -wpcm   8094 #pragma comment( <type> [,"string"] ) の使い方が間違っています
* -wpsb   8099 静的な 'main' はエントリ ポイントとしては扱われない
* -wptl   8103 パス '%s' とファイル名 '%s' が最大サイズ (%d) を超えている
* -wpnf   8123 パス '%s' が見つかりません - パスはオプション '%s' では無視されます
  -wpun   8135 不明な #pragma '%s' は無視されました
* -wpns   8138 #pragma '%s' はこのプラットフォームではサポートされていません。
* -wrch   8066 実行されないコード
* -wret   8067 値を伴わない return と伴う return の両方が使われている
* -wrng   8068 比較において定数が範囲外
* -wrpt   8069 移植性のないポインタ変換
* -wrvl   8070 関数は値を返すべき
* -wrlo   8116 ローカル オブジェクトへのポインタを返す
  -wsig   8071 変換によって有効桁が失われる
* -wspa   8072 問題のあるポインタ演算
  -wstu   8073 未定義の構造体 '%s'
  -wstv   8074 構造体が値で渡されている
* -wsus   8075 問題のあるポインタの変換
  -wstl   8087 '%s::operator==' は '%s' に含まれていることがパブリックに可視でなければならない
  -wstl   8089 '%s::operator<' は '%s' に含まれていることがパブリックに可視でなければならない
  -wstl   8090 '%s::operator<' は '%s' に使用されていることがパブリックに可視でなければならない
  -wstl   8091 %s の %s 引数 ('%s' に渡される) は %s 反復子: %s 反復子が必要
  -wstl   8092 %s の %s 引数 ('%s' に渡される) は反復子ではない: %s 反復子が必要
* -wsmx   8133 要求された SAVEMEM が使用可能な量 (%d) を超えています
* -wtai   8076 テンプレート インスタンス '%s' は既にインスタンス化されている
* -wtes   8077 明示的に特化されたクラス メンバを明示的に特化しても意味がない
* -wthr   8078 throw 式が例外仕様に違反しています
* -wtlb   8137 非推奨の #import 指令が検出されました。代わりに、TLIBIMP ユーティリティを使用してください。
  -wucp   8079 異なる 'char' 型へのポインタが混在している
  -wuse   8080 宣言された '%s' は使われていない
* -wucn   8114 国際文字名 '\u%04x' で表される文字は、現在の ANSI ロケール %s では表現できません
* -wvoi   8081 void 関数は値を返してはならない
* -wxxx   8117 NOT IN USE - DO NOT TRANSLATE
* -wzdi   8082 ゼロによる除算

関連項目