Si consideri il seguente codice:

using System;

class C<T>
{
    public static void M<T>(T x) {}
}

class Program
{
    static void Main(string[] args)
    {
    }
}

Il metodo M contiene il parametro T che "nasconde" il parametro T della classe C. In questo è csc a segnalare correttamente un warning che indica una pratica non buona, mentre gmcs non segnala nulla.