Advertencia del compilador (nivel 4) C4339

Actualización: noviembre 2007

Mensaje de error

'tipo': se detectó el uso de un tipo no definido en los metadatos CLR; el uso de este tipo puede provocar una excepción en tiempo de ejecución
'type' : use of undefined type detected in CLR meta-data - use of this type may lead to a runtime exception

Existe un tipo no definido en el código que se compiló para Common Language Runtime. Debe definirse el tipo para evitar una posible excepción en tiempo de ejecución.

De forma predeterminada, esta advertencia está desactivada. Para obtener más información, vea Advertencias del compilador desactivadas de forma predeterminada.

El ejemplo siguiente genera el error C4339:

// C4339.cpp
// compile with: /W4 /clr /c
// C4339 expected
#pragma warning(default : 4339)

// Delete the following line to resolve.
class A;

// Uncomment the following line to resolve.
// class A{};


class X {
public:
   X() {}

   virtual A *mf() {
      return 0;
   }
};

X * f() {
   return new X();
}