[Soot-list] ThrowableSet.catchableAs()

Eric Bodden eric.bodden at mail.mcgill.ca
Tue Mar 18 10:13:15 EDT 2008


Good idea. I will do that.

Eric

On 18/03/2008, Chris Pickett <chris.pickett at mail.mcgill.ca> wrote:
> Eric Bodden wrote:
>  > Hi, Irem.
>  >
>  >>  Exception in thread "main" java.lang.RuntimeException: This operation
>  >>  requires resolving level HIERARCHY but
>  >>  java.lang.UnsupportedClassVersionError is at resolving level DANGLING
>  >>         at soot.SootClass.checkLevel(SootClass.java:121)
>  >>         at soot.FastHierarchy.canStoreClass(FastHierarchy.java:269)
>  >>         at soot.FastHierarchy.canStoreType(FastHierarchy.java:204)
>  >>         at
>  >>  soot.toolkits.exceptions.ThrowableSet.catchableAs(ThrowableSet.java:904)
>  >>  ----------------
>  >>
>  >>  Does anyone know what I am doing wrong?
>  >
>  > To determine whether UnsupportedClassVersionError is of one of the
>  > types you care about (or a subtype thereof), it needs hierarchy
>  > information about the class. However, by default Soot won't construct
>  > this information for all classes, unless you are in whole-program mode
>  > or you explicitly tell Soot to do so.
>  >
>  > Try to do this right at the beginning of your code, ideally before
>  > calling soot.Main.main(..):
>  >
>  > Scene.v().addBasicClass("java.lang.UnsupportedClassVersionError",SootClass.SIGNATURES);
>  >
>  > This will advise Soot to resolve this class to the SIGNATURES level
>  > when it's loaded.
>
>
> I think this kind of error message provokes enough questions for the
>  message to have more useful information appended to it.  (Changing the
>  existing text of the message kills the ability to Google for it.)
>
>
>  Chris
>


-- 
Eric Bodden
Sable Research Group
McGill University, Montréal, Canada


More information about the Soot-list mailing list