Upozornění kompilátoru (úroveň 1) C5050
Možné nekompatibilní prostředí při importu modulu module_name: problém
Poznámky
Kompilátor zvýší C5050 vždy, když možnosti příkazového řádku pro moduly nejsou konzistentní mezi vytvořením modulu a stranami spotřeby modulů.
Toto upozornění je nové v sadě Visual Studio 2017 verze 15.9. Generuje se pouze při vytváření nebo využívání modulů určených možností kompilátoru /experimental:module
.
Příklad
V následujícím příkladu existují dva problémy:
Na straně spotřeby (main.cpp) není tato možnost
/EHsc
zadána.Verze jazyka C++ je
/std:c++17
na straně vytvoření a/std:c++14
na straně spotřeby.
cl /EHsc /std:c++17 m.ixx /experimental:module
cl /experimental:module /module:reference m.ifc main.cpp /std:c++14
Kompilátor vyvolá C5050 pro oba tyto případy:
warning C5050: Possible incompatible environment while
importing module 'm': mismatched C++ versions.
Current "201402" module version "201703".
Pokud chcete tento problém vyřešit, použijte stejné možnosti příkazového řádku kompilátoru pro modul i náročný kód.