Mutally exclusive constraints on two methods with the same signature
<p>So these two methods have the same signature but different constraints</p>

<pre><code>public static void Method&lt;T&gt;(ref T variable) where T : struct { }

public static void Method&lt;T&gt;(ref T variable) where T : class { }
</code></pre>

<p>But they cannot be defined in a single class because they have the same signatures. But in this particular case they're mutually exclusive. (Unless I'm wrong about that)</p>

<p>I understand you can put additional constraints besides <code>class</code> and <code>struct</code> but you can't specify both <code>struct</code> and <code>class</code> on the same method. So why would this fail to compile?</p>
