Compartir a través de


Error del compilador C3389

__declspec(keyword) no se puede utilizar con /clr:pure o /clr:safe

Comentarios

Las opciones del compilador /clr:pure y /clr:safe han quedado en desuso en Visual Studio 2015 y no se admiten en Visual Studio 2017.

Un modificador __declspec usado implica un estado por proceso. /clr:pure implica un estado por appdomain. Por lo tanto, no se permite declarar una variable con el modificador keyword __declspec y compilar con /clr:pure.

Ejemplo

El ejemplo siguiente genera el error C3389:

// C3389.cpp
// compile with: /clr:pure /c
__declspec(dllexport) int g2 = 0;   // C3389