text: .
  Fails on device (extracted from mscorlib tests)
  public class FakeString {
  public int length;
  public char start_char;
  }
  private static FakeString UnsafeConversion<T> (T thing) where T : FakeString
  {
  return thing;
  }
  [Test]
  public void MutableString ()
  {
  var m = typeof (Tests).GetMethod ("UnsafeConversion", BindingFlags.NonPublic | BindingFlags.Static);
  try {
  var m2 = m.MakeGenericMethod (typeof (string));
  Assert.Fail ("MakeGenericMethod");
  }
  catch (ArgumentException e) {
  return;
  }
  }
  Those tests are now disabled until this is fixed. They are:
  - MethodBaseTest.MutableString ()
  - MethodInfoTest.MakeGenericMethodRespectConstraints ()
  I think it is fine to disable this test for device.
  It does not prevent working code form working, it merely allows broken code to run on device, but this could be caught by the simulator.
  The price of adding the verifier for everyone to deal with a corner case seems like too big of a price to pay.
  This doesn't need the full verifier, only a small subset which checks generic constraints. But that code is deeply integrated into the current verifier, so it would require some work to extract it.
  The resolution was that we'll remain broken on device.