GCC 6.1 发布了，该版本较之前GCC5 新怎了大量的功能特性，默认采用C++14为新的标准，替代了之前的C++98。OpenMP 4.5规范将在本版本中被支持。此外，GCC 6.1 增强了对 C++17 的试验性支持；大大改进了诊断特性，包括位置，位置范围，拼写错误标识符建议，选项名字等等改进；新增了修复提示和一些警告提示。改进记录如下：
- UndefinedBehaviorSanitizer gained a new sanitization option,
-fsanitize=bounds-strict, which enables strict checking of array bounds. In particular, it enables
-fsanitize=boundsas 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-aliasingto work correctly.
- Alias analysis now correctly supports
aliasattributes. 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
thispointer 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-checkscan be used. Wrong code can be identified by using