// ĠFILE : Ġtest . kt Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġx Ġ= Ġ" x " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException ( x ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġy Ġ= Ġ" y " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġz Ġ= Ġ" z " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontinue Ġ Ġ// ĠTODO : Ġwhy Ġdoes Ġthe Ġcontinue Ġnot Ġhave Ġa Ġline Ġnumber Ġso Ġwe Ġstop Ġhere ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException ("$ i ") Ġ Ġ// ĠTODO : Ġ` e ` Ġshould Ġnot Ġbe Ġvisible Ġhere ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" OK " ĊĠĠĠ Ġ} Ġ Ġ// ĠTODO : Ġwhy Ġstop Ġhere Ġbefore Ġthe Ġline Ġabove Ġfor Ġthe Ġfinally Ġblock ? ĊĠĠĠ Ġreturn Ġ" FAIL " Ċ } Ċ Ċ // ĠThe Ġlocal Ġvariables Ġ` z ` Ġand Ġ` y ` Ġare Ġvisible Ġin Ġthe Ġfinally Ġblock Ġwith Ġold Ġbackend . Ċ // ĠIG NORE _ BACKEND : ĠJVM Ċ Ċ // ĠLOCAL ĠVARIABLE S Ċ // Ġtest . kt : 4 Ġbox : Ċ // Ġtest . kt : 5 Ġbox : Ċ // Ġtest . kt : 6 Ġbox : Ġi : int = 0 : int Ċ // Ġtest . kt : 7 Ġbox : Ġi : int = 0 : int Ċ // Ġtest . kt : 8 Ġbox : Ġi : int = 0 : int , Ġx : java . lang . String =" x ": java . lang . String Ċ // Ġtest . kt : 9 Ġbox : Ġi : int = 0 : int Ċ // Ġtest . kt : 1 0 Ġbox : Ġi : int = 0 : int , Ġe : java . lang . Exception = java . lang . RuntimeException Ċ // Ġtest . kt : 1 1 Ġbox : Ġi : int = 0 : int , Ġe : java . lang . Exception = java . lang . RuntimeException , Ġy : java . lang . String =" y ": java . lang . String Ċ // Ġtest . kt : 1 4 Ġbox : Ġi : int = 0 : int , Ġe : java . lang . Exception = java . lang . RuntimeException Ċ // Ġtest . kt : 1 9 Ġbox : Ċ // Ġtest . kt : 1 8 Ġbox : ĊĊ