Compartilhar via


Erro do compilador C3389

__declspec(keyword) não pode ser usado com /clr:pure ou /clr:safe

Comentários

As opções do compilador /clr:pure e /clr:safe foram preteridas no Visual Studio 2015 e são incompatíveis com o Visual Studio 2017.

Um modificador __declspec usado implica um estado por processo. /clr:pure implica um estado por appdomain. Portanto, declarar uma variável com o modificador palavra-chave __declspec e compilá-lo com /clr:pure não é permitido.

Exemplo

O seguinte exemplo gera o erro C3389:

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