aviso do compilador (nível 2) CS3021
Mensagem de erro
'type' não é necessário um atributo CLSCompliant porque o assembly não tem um atributo CLSCompliant
Este aviso ocorre se [CLSCompliant(false)] aparece em uma classe em um assembly que não tem um atributo CLSCompliant no nível do assembly definido como true (ou seja, a linha [assembly: CLSCompliant(true)]). Desde que o assembly é não declarar próprio CLS compatível, não é necessário para qualquer coisa dentro do assembly para declarar propriamente dito não compatível, como será considerado não-conformidade.Para obter mais informações sobre a conformidade de CLS, consulte Escrevendo código compatível com CLS.
Para descartar este aviso, remova o atributo ou adicione o atributo de conjunto.
Exemplo
O exemplo a seguir gera CS3021:
// CS3021.cs
using System;
// Uncomment the following line to declare the assembly CLS Compliant,
// and avoid the warning without removing the attribute on the class.
//[assembly: CLSCompliant(true)]
// Remove the next line to avoid the warning.
[CLSCompliant(false)] // CS3021
public class C
{
public static void Main()
{
}
}