using System;

namespace mono_bug
{
	class Program
	{
		public static void Main ()
		{

			// initialise so no null errors
			double [,] [] foo = new double [1, 1] [];
			foo [0, 0] = new double [2];

			double [,] [] bar;

			bar = (double [,] []) foo.Clone ();

			bar = (double [,] []) ReturnArray ();

			// compiles & works correctly
			bar = ReturnArray ();

			Console.WriteLine (bar [0, 0] [1].ToString ());
		}

		private static double [,] [] ReturnArray ()
		{
			// just creates a "useless", multi-dimensional jagged array
			double [,] [] zoo = new double [1, 1] [];
			zoo [0, 0] = new double [2];
			zoo [0, 0] [0] = 1;
			zoo [0, 0] [1] = 2;
			return zoo;
		}
	}
}