GCC 6.1 发布,新增功能特性

oschina
 oschina
发布于 2016年04月28日
收藏 11

GCC 6.1 发布了,该版本较之前GCC5 新怎了大量的功能特性,默认采用C++14为新的标准,替代了之前的C++98。OpenMP 4.5规范将在本版本中被支持。此外,GCC 6.1 增强了对 C++17 的试验性支持;大大改进了诊断特性,包括位置,位置范围,拼写错误标识符建议,选项名字等等改进;新增了修复提示和一些警告提示。改进记录如下:

  • Undefined Behavior Sanitizer gained a new sanitization option, -fsanitize=bounds-strict, which enables strict checking of array bounds.  In particular, it enables -fsanitize=bounds as well as instrumentation of flexible array member-like arrays.

  • Type-based alias analysis now disambiguates accesses to different pointers. This improves precision of the alias oracle by about 20-30% on higher-level C++ programs. Programs doing invalid type punning of pointer types may now need -fno-strict-aliasing to work correctly.

  • Alias analysis now correctly supports weakref and alias attributes. This makes it possible to access both a variable and its alias in one translation unit which is common with link-time optimization.

  • Value range propagation now assumes that the this pointer of C++ member functions is non-null.  This eliminates common null pointer checks but also breaks some non-conforming code-bases (such as Qt-5, Chromium, KDevelop). As a temporary work-around -fno-delete-null-pointer-checks can be used. Wrong code can be identified by using -fsanitize=undefined.

完整发布说明,可以在这里查看。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:GCC 6.1 发布,新增功能特性
加载中

最新评论(16

subool
subool
gcc从版本4就开始支持c++11吧,gcc4.7开始支持c++11,之前是支持c++0x。
subool
subool
难道c++17也要增加动态语言版?
subool
subool
c++标准库不够用吗?再加个boost库应该够用了。感觉c++17有向java/c#一些高级特性看齐的趋势,但使用上肯定没有java/c#方便。另:c++11标准非常完善,之后的标准都是补充和增强。
人生能绕几个圈
人生能绕几个圈

引用来自“回去干活”的评论

很多人都认为标准库是个坑.
我只想说你能写出比标准库更好的代码么?答案"是",可能是精简掉线程安全,相关自定义,但我又想说能快多少呢?实际上也快不了多少.
所以自作聪明自娱自乐可以,但要用在实际项目中会吃亏
回去干活
回去干活
很多人都认为标准库是个坑.
我只想说你能写出比标准库更好的代码么?答案"是",可能是精简掉线程安全,相关自定义,但我又想说能快多少呢?实际上也快不了多少.
itfanr
itfanr

引用来自“再踏”的评论

看到要求用4.8的以支持c++11
c++11 真心好很多
htfy96
htfy96
有些公司的GCC还被智子锁死在了4.4
邱鹏飞
学习了012
邱鹏飞
012学习了
DarkAngel
DarkAngel
完全没注意什么时候就跳到了6系列了。。。。。
返回顶部
顶部