[英]GCC: emit warnings when c++11 is used
必須在某些古老的Windows移動平台上構建的跨平台C ++項目。 但是,開發工作已由GCC完成。
每次使用C ++ 11功能時,它將在本地生成,但在生成服務器(移動Windows)上將失敗。
如果在我們的代碼庫中使用了C ++ 11功能,是否可以將GCC配置為以某種方式發出警告(不包括其他源依賴項)。
我知道使用-std=c++98 -pedantic
,但是:
使用C ++ 98標志構建需要與C ++ 98兼容的代碼。
使用C ++ 11標志構建需要與C ++ 11兼容的代碼。
檢查用於確保使用C ++ 98和C ++ 11構建的代碼之間的ABI兼容性的編譯器和標准庫的文檔; 為了具有ABI兼容性,可能需要(例如)在C ++ 11代碼中使用C ++ 98字符串,前提是您在C ++ 98和C ++ 11代碼庫之間傳遞了std::string
。
除非生成兩次,否則在構建同一文件時不能同時使用C ++ 11和不使用C ++ 11。 這也是一種選擇; 兩次構建C ++ 98兼容的東西,一次使用C ++ latest,一次使用C ++ 98。 停止錯誤和警告后,放棄C ++ 98構建。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.