Compiler Error C2346
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C2346.
function' cannot be compiled as native: reason
The compiler was unable to compile a function to MSIL.
For more information, see managed, unmanaged and /clr (Common Language Runtime Compilation).
To correct this error
Remove the code in the function that cannot be compiled to MSIL.
Either do not compile the module with /clr, or mark the function as unmanaged with the unmanaged pragma.
The following sample generates C2346.
// C2346.cpp
// processor: x86
// compile with: /clr
// C2346 expected
struct S
{
S()
{
{ __asm { nop } }
}
virtual __clrcall ~S() { }
};
void main()
{
S s;
}
Show: