Share via


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