簡體   English   中英

gcc編譯器標志在編譯期間抑制模板錯誤的模板擴展?

[英]gcc compiler flag to suppress template expansion for template errors during compilation?

我想知道是否有一個標志或修改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.

沒有一個。 編譯器正在嘗試幫助您識別導致問題的類。 它只知道該類是其模板類型的擴展。

gcc沒有這方面的標志,但是sed很容易解決這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM