[Soot-list] [Jasmin:2: Error] Using Soot to compile

Steven Arzt Steven.Arzt at cased.de
Thu Jul 30 04:09:58 EDT 2015


Hi,

 

We are in the process of retiring the Jasmin backend. Can you please try again with the –asm-backend command-line option? This option makes Soot use the much more modern Java classfile backend based on ASM. It’s rather new, but it should nevertheless be rather stable. Hopefully, we will be able to make the ASM backend the default quite soon.

 

Best regards,

  Steven

 

Von: soot-list-bounces at CS.McGill.CA [mailto:soot-list-bounces at CS.McGill.CA] Im Auftrag von csytang
Gesendet: Donnerstag, 30. Juli 2015 07:45
An: Soot list
Betreff: [Soot-list] [Jasmin:2: Error] Using Soot to compile

 

Hi all, 

     I use Soot to analyze java program. When it generate output .class files, the error incur.

     I use Soot will following command:

·         -no-bodies-for-excluded -cp /Users/tangchris/Documents/workspace/test/bin/:/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/lib/jce.jar   -W -p wjop enabled:true -p cg implicit-entry:false -p cg.spark enabled:true -keep-line-number -keep-bytecode-offset -f class test.SomeClass$Class1 test.SomeClass$Class2 test.SomeClass

     The error is

·         Writing to sootOutput/ .class

Jasmin:2: Warning - Syntax error..

^Writing to sootOutput/test/SomeClass$Class1.class

Jasmin:2: Error - Couldn't repair and continue parse.

.^

Jasmin: Found 2 errors

*	It is definitely fine for generate .jimp files.

     I don't know whether it is a potential bug or any problem when I use Soot command.

----------------attached file is the source code[in case of attachment not work, you can reference following]-------------------

package test;

 

public class SomeClass {

  public static Class1 class1At;

  public static Class2 class2At;

  public SomeClass(){

    Class1 c1 = new Class1();

    class1At = c1;

    }

  public static void main(String[]args) {

    SomeClass some = new SomeClass();

    Class1 c1 = new Class1();

    Class2 c2 = new Class2();

    some.class2At = c2;

    int x = class1At.intAt;

  }

  public Class2 crazyMethod() {

    class1At.intAt=5;

    return class2At;

  }

  public static class Class1 {

    public int intAt;

    public static Class2 cls;

    public Class1() {

    intAt = 1;

    cls = new Class2();

    cls.intAt = 3;

    }

  }

  public static class Class2 {

    public int intAt;

    public Class2 tm;

    public Class2(){

    intAt = 2;

    tm = Class1.cls;

    }

  } 

}

-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20150730/28aa7e76/attachment-0001.html 


More information about the Soot-list mailing list