Share via


Avertissement du compilateur C4959

impossible de définir un struct non managé 'type' dans /clr :safe, car l’accès à ses membres génère du code non vérifiable

Notes

L’accès à un membre d’un type non managé entraîne la création d’une image non vérifiable (peverify.exe).

Pour plus d’informations, consultez Code vérifiable et pur (C++/CLI).

L’option du compilateur /clr :safe est déconseillée dans Visual Studio 2015 et non prise en charge dans Visual Studio 2017.

Cet avertissement s’affiche comme une erreur et peut être désactivé avec le pragma warning ou l’option du compilateur /wd .

Exemple

L’exemple suivant génère l’erreur C4959.

// C4959.cpp
// compile with: /clr:safe

// Uncomment the following line to resolve.
// #pragma warning( disable : 4959 )
struct X {
   int data;
};

int main() {
   X x;
   x.data = 10;   // C4959
}