編譯程式警告 (層級 1) C5050
匯入模組 'module_name' 時可能不相容的環境:issue
備註
每當模組的命令行選項在模組建立和模組耗用量端之間不一致時,編譯程式就會引發 C5050。
此警告是Visual Studio 2017 15.9版的新功能。 它只會在建立或取用編譯程式選項所 /experimental:module
指定的模組時產生。
範例
下列範例中有兩個問題:
取用端 (main.cpp) 上未指定
/EHsc
選項。建立端上的 C++ 版本是
/std:c++17
,而在取用端上則是/std:c++14
。
cl /EHsc /std:c++17 m.ixx /experimental:module
cl /experimental:module /module:reference m.ifc main.cpp /std:c++14
編譯器會為以下兩種情況引發 C5050:
warning C5050: Possible incompatible environment while
importing module 'm': mismatched C++ versions.
Current "201402" module version "201703".
若要解決此問題,請使用模組和取用程式代碼的相同編譯程式命令行選項。