This documentation is archived and is not being maintained.

Compiler Warning C4957

'cast' : explicit cast from 'cast_from' to 'cast_to' is not verifiable

A cast will result in an unverifiable image.

Some casts are safe (for example, a static_cast that triggers user-defined conversions and a const_cast). A safe_cast is guaranteed to produce verifiable code.

For more information, see Pure and Verifiable Code (C++/CLI).

This warning is issued as an error and can be disabled with the warning pragma or the /wd compiler option.

The following sample generates C4957:

// C4957.cpp
// compile with: /clr:safe
// #pragma warning( disable : 4957 )
using namespace System;
int main() {
   Object ^ o = "Hello, World!";
   String ^ s = static_cast<String^>(o);   // C4957
   String ^ s2 = safe_cast<String^>(o);   // OK