[Soot-list] Exception in thread "main" java.lang.RuntimeException: TypeStack merging failed; unequal stack lengths: 1 and 0

Ankur Sinha sanjay.ankur at gmail.com
Mon Jul 12 03:36:17 EDT 2010


On Fri, 2010-07-09 at 10:04 -0400, Patrick Lam wrote:
> On 07/09/10 09:56, Ankur Sinha wrote:
> > hi,
> >
> > I just mailed the list requesting help setting the soot-class-path. I
> > managed to set it up manually, but have now run into this (twice):
> >
> > Exception in thread "main" java.lang.RuntimeException: TypeStack merging
> > failed; unequal stack lengths: 1 and 0
> > 	at soot.coffi.TypeStack.merge(TypeStack.java:137)
> > 	at soot.coffi.CFG.jimplify(CFG.java:1192)
> > 	at soot.coffi.CFG.jimplify(CFG.java:951)
> > 	at soot.coffi.CoffiMethodSource.getBody(CoffiMethodSource.java:100)
> > 	at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:82)
> > 	at soot.SootMethod.retrieveActiveBody(SootMethod.java:315)
> > 	at soot.PackManager.retrieveAllBodies(PackManager.java:967)
> > 	at soot.PackManager.runPacks(PackManager.java:331)
> > 	at soot.Main.run(Main.java:198)
> > 	at soot.Main.main(Main.java:141)
> > 	at startRun.main(startRun.java:55)
> >
> > Is this an error from in my code, or is it a Soot error?
> 
> That shouldn't happen. It would most likely be from some dodgy bytecode 
> you're analyzing. You can confirm that by running Soot directly on your 
> input. You should still get the error.
> 
> pat

hey,

I ran soot directly and got the same error. 


> [dfadrf at pll soot-2.4.0]$ java soot.Main -soot-class-path /home/dfadrf/Documents/work/IISC/FKache-1.0-beta4/FKache-1.0-beta4.jar:/home/dfadrf/Documents/work/IISC/scannotation-1.0.2.jar:/home/dfadrf/workspace/joeq/bin:/home/dfadrf/workspace/threadv1.0/bin/:/home/dfadrf/workspace/ankur_workspace/apache-ftpserver-1.0.4/common/lib/log4j-1.2.14.jar:/home/dfadrf/Documents/work/IISC/trove-1.0.2.jar:/home/dfadrf/Documents/work/IISC/jgroups-2.10.0.CR1.jar:/home/dfadrf/Documents/work/IISC/Java2HTML/j2h.jar:/home/dfadrf/workspace/chord/bin/:/home/dfadrf/Documents/work/IISC/saxonhe9/saxon9he.jar:/home/dfadrf/Documents/work/IISC/javassist-3.12.GA/javassist.jar:/home/dfadrf/Documents/work/IISC/jdd_103.jar:/home/dfadrf/Documents/work/IISC/concurrent.jar:/home/dfadrf/Documents/work/IISC/JavaBDD/javabdd-1.0b2.jar:/home/dfadrf/workspace/joeq/lib/jwutil-1.0.jar:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/rt.jar:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/jce.jar:/home/dfadrf/Documents/work/IISC/xalan-j_2_7_1/xalan.jar:/home/dfadrf/Documents/work/IISC/xalan-j_2_7_1/serializer.jar:/home/dfadrf/workspace/ankur_workspace/jdbf-src-rc0_1_1/bin/ -w --app Sample
> Soot started on Mon Jul 12 12:55:49 IST 2010
> No main class given. Inferred 'org.jgroups.Version' as main class.
> [Call Graph] For information on where the call graph may be incomplete, use the verbose option to the cg phase.
> Considering 155: aload[155]
> Exception in thread "main" java.lang.RuntimeException: TypeStack merging failed; unequal stack lengths: 1 and 0
>         at soot.coffi.TypeStack.merge(TypeStack.java:137)
>         at soot.coffi.CFG.jimplify(CFG.java:1192)
>         at soot.coffi.CFG.jimplify(CFG.java:951)
>         at soot.coffi.CoffiMethodSource.getBody(CoffiMethodSource.java:100)
>         at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:82)
>         at soot.SootMethod.retrieveActiveBody(SootMethod.java:315)
>         at soot.PackManager.retrieveAllBodies(PackManager.java:967)
>         at soot.PackManager.runPacks(PackManager.java:331)
>         at soot.Main.run(Main.java:198)
>         at soot.Main.main(Main.java:141)

What now?

Thanks,

regards,
Ankur



More information about the Soot-list mailing list