// This fixed a problem in the JIT. public class Stack { T[] data; public Stack () { data = new T [10]; } public void Add (T t) { data [0] = t; } } struct Foo { int a; } class X { static void Main () { Foo foo = new Foo (); Stack stack = new Stack (); stack.Add (foo); } }