Advertencia del compilador (nivel 1) CS3027

Actualización: noviembre 2007

Mensaje de error

'tipo_1' no es compatible con CLS porque la interfaz base 'tipo_2' no lo es
'type_1' is not CLS-compliant because base interface 'type_2' is not CLS-compliant

Un tipo no compatible con CLS no puede ser tipo base para un tipo compatible con CLS.

Ejemplo

El ejemplo siguiente contiene una interfaz con un método que utiliza un tipo no compatible con CLS en su firma, por lo que el tipo se vuelve no compatible con CLS.

// CS3027.cs
// compile with: /target:library
public interface IBase
{
   void IMethod(uint i);
}

El código siguiente genera la advertencia CS3027.

// CS3027_b.cs
// compile with: /reference:CS3027.dll /target:library /W:1
[assembly:System.CLSCompliant(true)]
public interface IDerived : IBase {}