2

最近、3.6 (Helios) から Eclipse 4.2 (Juno) にアップグレードしているときに、Eclipse でいくつかのエラーが発生しました。

私の環境は次のとおりです。

  • OS: Ubuntu 12.04 32 ビット
  • 日食: 4.2 ジュノ
  • GCC: 4.6.3

次のように私のコード:

static void doMatch(check_context_ptr ctxt)
{
    char    *cmd, *result;
    int k;//test 20120417
    char sourceName[10];
    asprintf(&cmd, "match %s %d %d\n",ctxt->filename, ctxt->probe_count, ctxt->threshold);
    free(cmd);
    for(k=0;k<10;k++)
        sourceName[k]=ctxt->filename[39+k];
}

次のようなエラー: 説明 リソース パス 場所 タイプ

  • 警告:属性 warn_unused_result [-Wunused-result] で宣言された 'asprintf' の戻り値を無視します
  • 警告: 変数「sourceName」が設定されていますが、使用されていません [-Wunused-but-set-variable]

すべての警告があることは知っていますが、私の日食ではエラー項目に表示されます

ここに画像の説明を入力

次のように、60 行目、64 行目、71 行目でエラーを解決する解決策があることを知っています。 ここに画像の説明を入力

私はそれが悪いプログラミング スタイルであることを知っていますが、私は常にこの方法を使用してコードをテストしており、コマンド パラメーターに -wall オプションがあり、未使用の戻り値フラグをコード分析設定で警告として設定していると確信しています。警告エラーを無視する方法を知っている人はいますか? Eclipseでパラメータを設定するには? 

4

1 に答える 1

0

GCC 4.6での奇妙な診断プラグマの動作に関して、これはローカライズされた質問です。したがって、言語関連の環境変数をen_US_UTF-8に変更するだけです。([ウィンドウ]->[設定]->[C / C ++]->[ビルド]->[環境])関連する環境変数:LANGUAGE、LANG、LC_ALL、LC_MESSAGEなど。

于 2013-03-18T04:22:51.733 に答える