[英]Should I be worried about g++ warnings saying 'inlining failed'?
在我正在辦公室工作的一個項目中,當我們使用-Os編譯發行版時,我們從g ++收到數百條警告,指出內聯失敗。 這些警告中的大多數似乎來自增強,但是有些來自我們自己的庫頭文件(我們鏈接到的二進制.dylibs)。 通常可以安全地忽略這些警告,還是我應該擔心的警告?
注意:我們在Mac OS X上使用g ++ 4.0
G ++是在提醒什么是本質,嚴格意義上的性能問題-你的要求inline
實現,只是不能被內聯。 如果inline
的使用並不重要,則應將其刪除(編譯器可以在沒有該提示的情況下內聯函數!),但是就代碼正確性而言,您可以忽略該警告。 如果inline
的使用確實很重要,即對性能至關重要(相對於愚蠢的過早優化而言),則警告是告訴您重新編寫代碼,以便可以實現(最壞的情況是,向下移動到宏) -嘆息,但是,當你必須時,你必須!-)。
如果沒有,應該保存
但是,您應該盡量減少警告。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.