[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE : [Pnet-developers] [bug #4430] Internal error: Could not verify the
From: |
Gopal V |
Subject: |
RE : [Pnet-developers] [bug #4430] Internal error: Could not verify the code - br.s at verify_branch.c:393 |
Date: |
Fri, 25 Jul 2003 01:42:05 +0530 |
User-agent: |
Mutt/1.2.5i |
If memory serves me right, Yannis BRES wrote:
> > Ok, so as far as I know , locvars 40 & 48 are
> > non-Assigncompatible ... ie being of totally different types ....
>
> Well, the method is supposed to return a System.Object, the 40th local
> variable is declared as Ir.BgL_ir_node_Kmovezd2memzd2 and the 48th is
> declared as Ir.BgL_ir_node_Kmovezd2tempzd2. What's wrong wrt. to ret ?
Ok, pnet's verifier was having problems with this kind of thing ie in
C# code ,
return (expr ? (Object)a : (Object)b);
Which generates
ldloc.0 //expr -- bool
brfalse ?L1
ldloc.1 // a -- Type A
br.s ?L2
?L1:
ldloc.2 // b -- Type B
?L2:
ret
Which was my original question ie "Is this generated from a huge ternary
expression" which it might be , scheme being a very very easy language to
put
(ternary_op (..LOTS..) (..LOTS..) (..LOTS..))
to have this sort of effect on IL ..
> I do insist that this is a recent "regression", such programs were not
> rejected till recently...
Ok, this problem was there from day #1 of the verifier stack checks :)
You should use ilverify for that as ilrun does not verify methods it
does not run . So the problem popped up when you use a particular set of
options & ran the problem function.
But I've fixed this up without breaking the rest of the verifier I hope.
Currently ilverify gives your bigloo an A-OK :) .
Gopal
--
The difference between insanity and genius is measured by success
- RE : [Pnet-developers] [bug #4430] Internal error: Could not verify the code - br.s at verify_branch.c:393,
Gopal V <=