Restrições mutuamente exclusivas em dois métodos com a mesma assinatura

Então, esses dois métodos têm a mesma assinatura, mas restrições diferentes

public static void Method<T>(ref T variable) where T : struct { }

public static void Method<T>(ref T variable) where T : class { }

Mas eles não podem ser definidos em uma única classe porque eles têm as mesmas assinaturas. Mas neste caso particular eles são mutuamente exclusivos. (A menos que eu esteja errado sobre isso)

Eu entendo que você pode colocar restrições adicionais alémclass estruct mas você não pode especificar os doisstruct eclass no mesmo método. Então, por que isso falharia em compilar?

questionAnswers(3)

yourAnswerToTheQuestion