C#
===

Using fixed arrays and loading `struct` into the stack for an operation.


    public unsafe struct Godzilla
    {
        public const int Size = 40900;
        fixed double data[Size];
        public Godzilla(double init)
        {
            fixed(double* ptr=data)
            {
                for(int i=0; i<Size; i++)
                {
                    ptr[i]= init;
                }
            }
        }

        public void Add(Godzilla other)
        {
            fixed(double* ptr=data)
            {
                for(int i=0; i<Size; i++)
                {
                    ptr[i]+=other.data[i];
                }
            }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Godzilla A=new Godzilla(1.0);
            Godzilla B=new Godzilla(2.0);
            A.Add(B);
        }
    }

It tries to load all the values on the stack and fails. Each struct is 8×40900 = 327,200 bytes long and when two of them get loaded into the stack it pukes.

![SO][1]


  [1]: https://i.sstatic.net/9LJR4.png