CS0706 de erro do compilador

Mensagem de erro

Tipo de restrição inválido.Um tipo usado sistema autônomo restrição deve ser uma interface, uma classe não sealed ou um parâmetro de tipo.

Este erro ocorre quando uma construção inválido é usada em uma cláusula de restrição.Para evitar esse erro, use uma interface ou classe não selada em vez de construção que causou o erro.

Exemplo

O exemplo a seguir gera CS0706.

// CS0706.cs
// compile with: /target:library
class A {}
class C<T> where T : int[] {}  // CS0706
class D<T> where T : A {}  // OK