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.
Example
The following sample generates C2346.
// C2346.cpp
// processor: x86
// compile with: /clr
// C2346 expected
struct S
{
S()
{
{ __asm { nop } }
}
virtual __clrcall ~S() { }
};
int main()
{
S s;
}