title: What use have attributes on generic parameters?
body: <p>It is valid (ie. it compiles and runs) to put an attribute on the generic parameter for a class or a method:</p>
  
  <pre><code>public class MyClass&lt;[My] T&gt;
  {
      private void MyMethod&lt;[My] T&gt;()
      {}
  }
  
  public class MyAttribute : Attribute
  {}
  </code></pre>
  
  <p>I've never seen this used, and am struggling to come up with a reason as to why you would want to.</p>
  
  <p>Is it just a quirk/side-effect of the language specification, or is there a valid/useful reason to put an attribute in this position?</p>