// Important test: compare this to gcs0408-*.cs; these are the allowed cases. class X[T] { A ( _t : T) : void { } A ( _t : array [T]) : void { } A ( _t : array [2,T]) : void { } A ( _t : array [ array [T]]) : void { } B ( _t : array [T]) : void { } B ( _t : int) : void { } C ( _t : array [T]) : void { } C ( _t : array [2,T]) : void { } C ( _t : array [3,int]) : void { } D ( _x : int, _y : T) : void { } D ( _x : T, _y : long) : void { } } class Foo { static Main () : void { } } /* BEGIN-OUTPUT END-OUTPUT */