【发布时间】:2011-08-06 00:11:36
【问题描述】:
我想知道 gcc 编译器是否有一个标志或修改,当遇到涉及模板的错误时,它会返回一个行号和解释错误类型的句子,但会不打印模板扩展代码意大利面条的页面总是遵循这样的错误。
例如,而不是这样的错误:
temp.cc:9: error: ‘class std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >’ has no member named ‘hat’
我想要这样的东西:
temp.cc:9: error: class has no member named hat.
【问题讨论】:
-
通过 sed 或 perl 脚本管道输出?
-
试试 Clang - 这是 clang 前端的设计特点之一。
标签: c++ templates gcc compiler-construction