try/catch

Hi,

Can anyone tell me if I am missing something with this code ?

Why is the exception not caught?

System.println("BEGIN");
var numberArray = [0, 0, 0];

try
{
  System.println("a");
  numberArray[4] = 1; 
  System.println("b");
}

catch (exception) {
  System.println("catch");
}

finally
{
  System.println("finally");
}

System.println("END");

The similator output the following :

BEGIN
a

Error: Array Out Of Bounds Error
Details: Failed invoking <symbol>


Note : I have tested using SDK 3.0.10 and 3.0.12.

Thanks