Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Error Message
Directly modifying or treating the result of an unbox operation as an lvalue is unverifiable
Dereferencing a handle to a value type, also known as unboxing, and then assigning to it is not verifiable.
For more information, see Implicit Boxing.
Example
The following sample generates C4972.
// C4972.cpp
// compile with: /clr:safe
using namespace System;
ref struct R {
int ^ p; // a value type
};
int main() {
R ^ r = gcnew R;
*(r->p) = 10; // C4972
// OK
r->p = 10;
Console::WriteLine( r->p );
Console::WriteLine( *(r->p) );
}