[Soot-list] Jimple Parser error

Sergio Ferrero sferrero at ensoftcorp.com
Fri Aug 23 13:52:28 EDT 2013


Thanks Bernhard!
I doubled checked that the problem goes away if I generate Jimple from
class file as you indicated.
As of now, that is a valid workaround for me.
However, I'd appreciate it if someone has more info about it in the future.

Thanks Al too.
Sergio


On Fri, Aug 23, 2013 at 10:50 AM, Bernhard Berger <berber at tzi.de> wrote:

> Hi,
>
> jb does different kinds of Jimple normalization including local name
> standardization.  According to [1] jb is called by JimpleMethodSource.
> That is the location where the Jimple-AST is transformed into a Jimple body.
>
> Bernhard
>
> [1]
> https://github.com/Sable/soot/blob/develop/src/soot/jimple/JimpleMethodSource.java#L49
>
> Am 23.08.2013 um 15:09 schrieb Al <aaloanmiftah at yahoo.com>:
>
> jb phase contains transformers that are /meant/ to get rid of redundant
> jimple code resulting from bytecode->jimple. It should be safe to apply the
> phase manually though.
>
> On Aug 23, 2013, at 12:38 AM, Bernhard Berger <berber at tzi.de> wrote:
>
> Hi,
>
> it seems that the naming of the locals is broken if you read from Java
> source files (using class files is working for the class you posted).
>
> The problem here is that there is a local named "@p0" which is not
> supported by Soot's lexer (the rule is *at_identifier = '@' (('parameter'
> dec_digit+ ':') | 'this' ':' | 'caughtexception');*  ) This should be no
> problem since jb.lns should normalize the names but I do not see that jb
> runs when you are using Java source. Does someone know why?
>
>
> Bernhard
>
> Am 22.08.2013 um 22:42 schrieb Sergio Ferrero <sferrero at ensoftcorp.com>:
>
> I get the following error when using Jimple Parser to parse the attached
> Jimple file.
>
> soot.jimple.parser.lexer.LexerException: [31,26] Unknown token: @p0
>
> at soot.jimple.parser.lexer.Lexer.getToken(Lexer.java:1183)
>
> at soot.jimple.parser.lexer.Lexer.peek(Lexer.java:36)
>
> at soot.jimple.parser.parser.Parser.parse(Parser.java:119)
>
> ....
>
>
> I have also attached corresponding java file from which I generated the
> Jimple file by using the Soot Eclipse plugin.
>
> Any help is appreciated.
> Thanks
> Sergio
> <E1.java><com.ensoftcorp.abp.test.E1.jimple>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20130823/520de550/attachment.html 


More information about the Soot-list mailing list