Re: JustIce problem with

"Dave Brosius" <[email protected]> Wed, 23 Nov 2005 22:25:27 -0500
Newsgroups gmane.comp.jakarta.bcel.user
Message-ID <001d01c5f0a6$b7736e80$6501a8c0@MeBigFatGuy>
If you wouldn't mind, please post a bug to: 
http://issues.apache.org/bugzilla/

if you have a simple class that shows the problem, please post that too.

Thanks!
-dave

----- Original Message ----- 
From: "Mariano Achaval" <[email protected]>
To: <[email protected]>
Sent: Wednesday, November 23, 2005 11:55 AM
Subject: JustIce problem with


>I trying to use the JustIce with 1.5 classes but i get this error
>
> Operand of LDC or LDC_W must be one of CONSTANT_Integer, CONSTANT_Float or
> CONSTANT_String, but is 'CONSTANT_Class[7](name_index = 214)'.
>
> I have search and this seems to be the reason
> JVM spec has changed so that LDC/LDC_W can load CONSTANT_Class constants - 
> those
> instructions are issued by the 1.5 compiler now, when you use a class 
> literal.
> So it seems that it must be added to the options
> At Pass3aVerifier
> public void visitLDC(LDC o){
> indexValid(o, o.getIndex());
> Constant c = cpg.getConstant(o.getIndex());
> if (! ( (c instanceof ConstantInteger) ||
> (c instanceof ConstantFloat) ||
> (c instanceof ConstantString) ) ){
> constraintViolated(o, "Operand of LDC or LDC_W must be one of 
> CONSTANT_Integer,
> CONSTANT_Float or CONSTANT_String, but is '"+c+"'.");
> }
> }
>
> As you can see the ConstantClass was not added
> Saluts
> Mariano A.
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>