【问题标题】:How to ignore "-Wunused-result" and "-Wunused-but-set-variable" Errors in Eclipse如何忽略 Eclipse 中的“-Wunused-result”和“-Wunused-but-set-variable”错误
【发布时间】:2013-03-18 12:22:51
【问题描述】:

最近我在 Eclipse 中从 3.6 (Helios) 升级到 Eclipse 4.2 (Juno) 时遇到了一些错误,

我的环境如下:

  • 操作系统:Ubuntu 12.04 32 位
  • Eclipse:4.2 Juno
  • 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];
}

如下错误: 描述资源路径位置类型

  • 警告:忽略 'asprintf' 的返回值,用属性 warn_unused_result [-Wunused-result] 声明
  • 警告:变量「sourceName」已设置但未使用 [-Wunused-but-set-variable]

我知道有所有警告,但在我的日食中,它们显示在错误项中

我知道在第 60、64 和 71 行有解决错误的方法,例如:

我知道这是一种糟糕的编程风格,但我总是使用这种方式来测试我的代码,并且我确信命令参数有一个 -wall 选项,并在代码分析设置中将未使用的返回值标志设置为警告。 所以有人知道如何忽略警告错误吗?如何在 Eclipse 中设置参数?

【问题讨论】:

  • 我解决了。我将eclipse所有语言相关的环境变量更改为en_US_UTF-8 Window -> Preference -> C/C++ -> Build -> Environment -> LANGUAGE, LANG, LC_ALL, LC_MESSAGE等。

标签: eclipse


【解决方案1】:

关于Strange diagnostic pragma behavior in GCC 4.6,这是一个本地化问题。所以我只是将语言相关的环境变量更改为 en_US_UTF-8。 (窗口 -> 首选项 -> C/C++ -> 构建 -> 环境) 相关环境变量:LANGUAGE、LANG、LC_ALL、LC_MESSAGE等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多