Advertencia del compilador (nivel 1, error) C4399
"symbol": el símbolo por proceso no se debe marcar con __declspec('dllimport') cuando se compila con /clr:pure
Comentarios
La opción del compilador /clr:pure está en desuso en Visual Studio 2015 y no se admite en Visual Studio 2017.
Los datos de una imagen nativa o una imagen con construcciones nativas y de Common Language Runtime (CLR) no se pueden importar en una imagen pura. Para resolver esta advertencia, compile con /clr (no con /clr:pure) o elimine __declspec(dllimport)
.
Esta advertencia se puede emitir como un error. Use la pragma de advertencia para deshabilitar o cambiar el nivel de advertencia.
Ejemplo
El ejemplo siguiente genera la advertencia C4399.
// C4399.cpp
// compile with: /clr:pure /doc /W1 /c
__declspec(dllimport) __declspec(process) extern const int i; // C4399