Linux内核将很快默认情况启用“-Wimplicit-fallthrough”
2018-08-26 00:00
711 查看
-Wimplicit-fallthrough编译器标志自GCC 7以来一直存在,用于警告切换失败的情况,如果程序员无意中忘记向案例添加“break”语句,则可能导致潜在的nug/意外行为。 Linux内核希望很快就能默认启用此警告。
-Wimplicit-fallthrough警告试图明智地处理它,并且只在适当的时候警告程序员/用户,并确认需要切换案例的情况。较新的Linux内核开发人员Gustavo A. R. Silva已经通过这个隐式的fallthrough编译器标志处理了两千多个警告。在当前内核中发出警告的2311种情况中,只有32种情况需要检查,以确定是否存在任何代码错误或假阳性。
在这个过程中,由于这个编译器警告已经解决了许多bug,其中一些错误已经在主线内核中持续了五年多。一旦解决了剩下的情况,该计划将在未来的内核构建中默认启用“-Wimplicit-fallthrough”,以防止类似的错误在未来蔓延到内核中。
有关此项工作的更多详细信息,请参阅针对Linux 5.2的pull request,该请求正在按预期标记更多的switch-fallthroughs。
那些不熟悉此GCC编译器警告的人可以通过此Red Hat开发人员博客文章了解更多信息。
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-05/158591.htm
相关文章推荐
- CentOS 7.0关闭默认防火墙启用iptables防火墙
- Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息
- C++函数重载遇到了函数默认参数情况
- 没有为请求的 URL 配置默认文档,并且没有在服务器上启用目录浏览。
- 如何让gridview中的checkbox根据数据库情况默认选中?
- jquery Tab默认情况下自动切换
- Struts2 默认UI组件 s:form 生成代码不适用于使用二级域名情况的应用
- 警告: 隐式声明与内建函数‘exit’不兼容 [默认启用]
- 使用SQLServer Audit来监控触发器的启用、禁用情况
- ubuntu权限不够(进入后身份并不是root而是自己的默认登录名的情况)
- Java中变量定义之后默认初始化的情况
- 从启动模式为singleInstance的Activity启动到默认情况的Activity
- 解决IntelliJ IDEA里Maven默认情况下编译版本为JDK1.5问题
- 配置错误:不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的(
- Oracle 11g default profile 默认启用密码过期180天导致账户锁定
- iis6 拒绝目录列表(默认文档已启用)
- Ubuntu学习4_Ubuntu默认防火墙安装、启用、配置、端口、查看状态相关信息
- 没有配置aspnetdb的情况下Membership的默认存储方式
- 微软即将在 IE 10 中默认启用 Flash
- 【asp】如何打开asp文件,包括IIS安装,HTTP错误403.14,配置默认文档,启用目录浏览