[Soot-list] Bad use of primitive type when performing transformations needed
Quentin Sabah
quentin.sabah at inria.fr
Sun Jun 9 09:37:21 EDT 2013
>
> $i0 = virtualinvoke a.<java.lang.String: int length()>();
> $i1 = 4 + $i0;
> $r1 = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>($i1);
> interfaceinvoke info.<java.util.List: boolean add(java.lang.Object)>($r1);
>
> I used the same way in creating my jimple in order to get the equivalent code that I want (in this example: info.add(4 + a.length());) but, I get the exception in [1] where 'j' (a local with RefType.v("int")) has the same role as $i0.
Why don't you just show us the actual jimple code leading to that exception? It looks like you have somewhere the following statements:
int j;
...
interfaceinvoke info.<java.util.List: boolean add(java.lang.Object)>(j);
Regards.
--
Quentin Sabah, CIFRE Ph.D. student
Grenoble University
INRIA-SARDES | STMicroelectronics/AST
Montbonnot, France | Grenoble, France
mailto:quentin.sabah at inria.fr | mailto:quentin.sabah at st.com
phone: +33 476 61 52 42 | phone: +33 476 58 44 14
More information about the Soot-list
mailing list