Makefile编译时的告警选项

makefile文件中
这是一些编译器警告选项,用于在编译代码时检测潜在的问题和错误。下面是每个警告的含义:

- `-Wall`:启用所有常规警告。
- `-Wextra`:启用额外的警告,包括一些不被 `-Wall` 覆盖的警告。
- `-Wshadow`:检测变量遮蔽(shadowing)问题,即内部变量与外部变量同名。
- `-Wundef`:检测未定义的宏。
- `-Wmaybe-uninitialized`:检测可能未初始化的变量。
- `-Wmissing-prototypes`:检测函数缺少原型声明。
- `-Wno-discarded-qualifiers`:禁止丢弃限定符(qualifier)的警告。
- `-Wno-unused-function`:禁止未使用函数的警告。
- `-Wno-error=strict-prototypes`:禁止函数原型声明不严格的警告。
- `-Wpointer-arith`:检测指针算术运算。
- `-fno-strict-aliasing`:禁用严格别名规则。
- `-Wno-error=cpp`:禁止 C++ 注释的警告。
- `-Wuninitialized`:检测未初始化的变量。
- `-Wno-unused-parameter`:禁止未使用参数的警告。
- `-Wno-missing-field-initializers`:禁止缺少结构体字段初始化的警告。
- `-Wno-format-nonliteral`:禁止非字面格式字符串的警告。
- `-Wno-cast-qual`:禁止强制类型转换限定符的警告。
- `-Wunreachable-code`:检测无法到达的代码。
- `-Wno-switch-default`:禁止缺少 switch 语句中的 default 分支的警告。
- `-Wreturn-type`:检测函数返回类型不匹配的问题。
- `-Wmultichar`:检测多字符常量。
- `-Wformat-security`:检测格式化字符串漏洞。
- `-Wno-ignored-qualifiers`:禁止忽略限定符的警告。
- `-Wno-error=pedantic`:禁止严格遵循标准的警告。
- `-Wno-sign-compare`:禁止有符号和无符号数比较的警告。
- `-Wno-error=missing-prototypes`:禁止缺少函数原型声明的警告。
- `-Wdouble-promotion`:检测浮点数提升问题。
- `-Wclobbered`:检测寄存器被覆盖的问题。
- `-Wdeprecated`:检测使用已弃用的函数或特性的问题。
- `-Wempty-body`:检测空语句块。
- `-Wstack-usage=2048`:检测栈使用情况,限制栈大小为 2048 字节。
- `-Wtype-limits`:检测类型范围限制。
- `-Wsizeof-pointer-memaccess`:检测指针大小与内存访问的问题。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值