加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

如何让gcc警告未知功能?

发布时间:2020-12-13 19:10:31 所属栏目:Linux 来源:网络整理
导读:考虑以下代码: int function(){ int a = 1 ; int b = helper(a); return b ;}int main(){ function(); return 0 ;} 尽管事实上尚未声明名为“helper”的函数,但此代码段使用gcc编译成目标代码而没有问题.我知道链接器应该抓住这个,但是我看到了一旦模糊的bu

考虑以下代码:

int function()
{
  int a = 1 ;
  int b = helper(&a);
  return b ;
}

int main()
{
  function();
  return 0 ;
}

尽管事实上尚未声明名为“helper”的函数,但此代码段使用gcc编译成目标代码而没有问题.我知道链接器应该抓住这个,但是我看到了一旦模糊的bugs,一旦包含正确的头文件(包含函数声明)就解决了,尽管链接器和编译器没有产生任何错误.

有许多gcc警告似乎是相关的,但实际上并没有实现我想要的:-Wmissing-prototypes,-Wmissing-declarations和-Wstrict-prototypes.不幸的是,当定义全局函数时,这些警告仅限于缺少原型,我对引用全局函数时缺少原型的警告感兴趣.

任何人都可以建议替代品吗?谢谢.

最佳答案
你想要-Wimplicit-function-declaration警告.

就个人而言,我更喜欢使用-Wall -Wextra编译我的代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读