[Soot-list] Exception in transformation

Quentin Sabah quentin.sabah at inria.fr
Mon May 27 09:22:41 EDT 2013


> As I understand you mean after getting the Jimple, I should convert it
> to bytecode then use -g option?

No, I mean passing the -g option to javac when you compile the analyzed 
program from .java to .class. This is only possible if you have the 
sources of the classes you are analyzing.

> I'm not quite sure but, because the writing Jimple has stopped in the
> method that I have attached I think the problem is inside this method.

> Questions that I have are:
> If I'm not making a mistake this exception is not related to the
> transformation that I perform because if so I would have got an error
> before writing to the output (I mean while performing Transformation) Am
> I right?

The exception arise because the well-formedness of the body is checked 
before writing the output, I have no idea if this verification is also
performed earlier in Soot.

Before and after your analyzes, you should call the Body.validate() 
method on each transformed body, so you'll know if one of your
transformations is wrong.

You may also try to disable all your own transformations and analyzes. 
If the problem persists, then there might be a problem in Soot, 
otherwise it comes from your side.

-- 
Quentin Sabah, CIFRE Ph.D. student
Grenoble University
INRIA-SPADES                   | STMicroelectronics/AST
Montbonnot, France             | Grenoble, France
mailto:quentin.sabah at inria.fr  | mailto:quentin.sabah at st.com
phone: +33 476 61 54 57        | phone: +33 476 58 44 14


More information about the Soot-list mailing list