[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
beta4 problems
My first experiences with Soot (1.beta.4) were somewhat rough.
Here are some problems you'd probably like to know about.
Soot doesn't work under Sun's Java 1.2.1_02 ("Java 2") because it can't
find standard classes like java.lang.System. For Java 1.2, I believe
that it needs to search using the "java.sys.class.path" property as well
as the "java.class.path" property.
Example3 provokes a segmentation fault from java (!) when run using the
distributed PropagateConstants.class file. This is consistent across
three platforms: Intel Linux, Sun Solaris, Digital Unix. "java -verify"
reports a VerifyError (with no additional information) on SGI Irix only.
Example5 fails because the code that spawns a "jasmin" process doesn't
wait for the process to finish before it deletes the jasmin input file.
Below is a patch for this problem.
---------------------------------------------------------------------------
Gregg Townsend Staff Scientist The University of Arizona
gmt@cs.arizona.edu Computer Science Tucson, Arizona, USA
*** SootClass.org Wed Mar 17 21:06:46 1999
--- SootClass.java Wed Aug 18 17:12:14 1999
***************
*** 896,904 ****
writerOut.close();
! Runtime.getRuntime().exec("jasmin " + this.getName() + ".jasmin");
tempFile.delete();
! } catch(IOException e)
{
throw new RuntimeException("Could not produce new classfile! (" + e + ")");
}
--- 896,905 ----
writerOut.close();
! Runtime.getRuntime().exec("jasmin " + this.getName() + ".jasmin").waitFor();
!
tempFile.delete();
! } catch(Exception e)
{
throw new RuntimeException("Could not produce new classfile! (" + e + ")");
}