Visual C++ .NET 2003 (12/31/2005)
Have you ever tried declaring a big array in C++. If the array is static, memory is allocated on the stack. However if the stack is not large enough the array will overflow into code-space. The compiler does not warn you, or give an error message. Your program will work for sometime and then in the middle of execution crash (at random points). This error has cost me so many days of wasted effort. It should be relatively easy for the compiler to determine that the array will overflow into code-space since the dimensions of the array are known before hand. I wonder why no-one has built this check in present compilers.
Workaround: Use dynamic memory allocation for all arrays