[Mono-list] exception semantics
Paolo Molaro
lupus@ximian.com
Tue, 29 Jan 2002 17:31:37 +0100
On 01/29/02 Morten Sylvest Olsen wrote:
> On Tue, 29 Jan 2002, Jeroen Frijters wrote:
> > This is the correct behaviour, since you explicitly return from the
> > catch block.
>
> Hmm, can that really be correct?. I wasn't aware of this semantic change
There was a bug in the interp. I fixed it in my tree.
> .try { // 0
> .try { // 1
> IL_0000: ldstr "In try"
> IL_0005: call void System.Console::WriteLine(string)
> IL_000a: ldc.i4.1
> IL_000b: stloc.1
> IL_000c: leave.s IL_0036
> ^^^^^^^^^^^^^^^^
> Here I leave both the enclosing try-blocks.
>
> } // end .try 0
> ^^^^^^^^^^^^^
>
> That looks like a bug in monodis. This must be the end of try-block 1? Or
> else the nesting requirements of I.11.4.2.7 are violated.
It's just and ordering problem in the output, both block 0 and 1 begin
at the same position. Fixed this as well.
lupus
--
-----------------------------------------------------------------
lupus@debian.org debian/rules
lupus@ximian.com Monkeys do it better