在红帽的开发者博客上,David Malcolm 讲述了他为即将发布的 GCC 8 所做的一些改进。
Malcolm 表示,他已使得 C/C++ 编译器提供的许多错误信息更具帮助性,其中包括为集成开发环境(IDE)和其他工具添加提示,以便为语法和其他类型的错误提供修复建议。
他在文章中举了一个例子 ——
const char *test(void)
{
FILE *f;
int limit = INT_MAX;
/* etc */ return NULL;
}
像这段代码看上去没什么问题,是很常见的代码片段,不过缺少了 #include 指令。所以如果你只是简单地将它复制到一个新文件中,并试图按原样编译它,那么在复制和粘贴示例时,结果可能会令人沮丧 —— 究竟需要哪些头文件?因此,针对这种情况,Malcolm 在 GCC 8 中添加了一些提示,告诉你哪些头文件丢失了(针对最常见的例子)。
更多关于 GGC 8 可用性的改进请查看原博客。