我想知道是否有一个标志或gcc编译器的修改,将返回一个行号和句子,当它遇到涉及模板的错误时解释错误的类型,但将而不是打印页面的模板扩展代码总是遵循这样的错误的意大利面条。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脚本输出管道? – msandiford
尝试Clang - 这是铛前端的设计特色之一。 – osgx