2011-12-10 37 views
2

我们都喜欢C++生成跨越两个shell屏幕的详细错误。特别是在模板函数定义中忘记单连字符后。而你所需要的仅仅是错误信息的第一行,也许是最后一行。C++错误较少详细

如何使C++模板错误更简洁?

+2

找到不要使用gcc使用VS而不是过滤的例子:d。 – AlexTheo

+2

¤参见FAQ条目[“任何人类希望如何理解这些过度冗长的基于模板的错误消息?”](http://www.parashift.com/c++-faq-lite/templates.html#faq-35.17 )。简而言之,在Usenet的日子里,经常给出的答案是使用StlFilt(链接到FAQ)。注意:此处给出的链接目前仅限于主要的FAQ网站。常见问题解答项目URL的更改,常见问题解答反映在不受限制的站点。这并不意味着直接链接。无论如何,在提问之前阅读常见问题通常是一个好主意。干杯&hth。, –

回答

1

我不相信你可以轻松做到这一点。另一方面,可能的是使用彩色输出。

在Debian上(和相关的),你可以很容易地安装colorgcc包,它确实如此。

它有很大帮助。这是不一样的,但它确实有帮助

1

LLVM clang更好的前端可能是唯一的选择。

2

如果你正在使用gcc(或g ++),你可以使用以下选项: -Wfatal-errors -w

的-Wfatal,错误将出现第一个错误编译站,-w将消除警告。在大多数情况下,我不建议这样做,但现在可能对您的情况有所帮助。

+1

这种方法的问题在于GCC输出像重载决策候选一样的笔记,就像它们是错误一样。打开'-Wfatal-errors'就会得到“不明确的调用”,并且想知道哪些是模糊的重载,因为每次重载列表都是GCC的“另一个错误”。所以,而不是二十个错误,有时你会得到一半的错误。 –