|
Hi!
I'm still in trouble. The problem is that I have to
modify an existing class, so there is some variables that I can't control...
The description of the problem again:
I'm modifiying a method push of a stack (in a
class archive) to include a post condition on it: I want to know if the
stack.size = [EMAIL PROTECTED] + 1.
To check this condition at the end of the method, I
have to keep the initial value of stack.size. So, I created a local
variable to keep the value:
InstructionHandle ih_3 = il.append(ih_2,
factory.createStore(Type.INT, 2));
The problem is that, the code of the method uses
this position (2). Translated with BCELifier:
InstructionHandle ih_13 =
il.append(_factory.createStore(Type.OBJECT, 2));
InstructionHandle ih_14 = il.append(_factory.createLoad(Type.OBJECT, 2)); So, at the end, when I want to know the initial
value of the stack size, it isn't there anymore.
I tried to delete this ih_13 and ih_14 and include
again, using the position 3. But it not possible, because the error "Target
Lost Exception"
I'm sendig the code to you, if helps. I want to
modify the class "Pilha", method "adicionaPar". The class "Testador" modifies
it, and the class "AcessoPilha" is the "main method". There is BCELlifier to, if
you want to generate the BCEL code. It creates the file
"pilhaBCEL.java".
Thanks again!
Camila
|
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
