using System; public struct Foo[T] { public mutable Data : T; public mutable Data2 : T; public this ( a : T, b : T) { this.Data = a; this.Data2 = b; } } public class Test[T] { public mutable Data : T; public mutable Data2 : T; public this ( a : T, b : T) { this.Data = a; this.Data2 = b; } } class X { static Main () : int { mutable foo = Foo (3, 5); if (foo.Data != 3) { 1; } else { if (foo.Data2 != 5) { 2; } else { mutable test = Test (3, 5); if (test.Data != 3) { 3; } else { if (test.Data2 != 5) { 4; } else { 0; } } } } } } /* BEGIN-OUTPUT END-OUTPUT */