<div dir="ltr">Dear all,<div><br></div><div>I am running some tests with the in-build <span style="font-family: Monaco; font-size: 11px;">IFDSLocalInfoFlow</span><font face="arial, sans-serif" size="2"> to be familiar with inter-prodecural program analysis with heros.</font></div><div><font face="arial, sans-serif" size="2"><br></font></div><div><font face="arial, sans-serif" size="2"><br></font></div><div><font face="arial, sans-serif" size="2" color="#ff0000">I use the following options.</font></div><div><font face="arial, sans-serif" size="2"><br></font></div><div><p style="font-size: 11px; font-family: Monaco;">String[] <span style="color: #7e504f">interOptions</span> = <span style="color: #931a68">new</span> String[14];</p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[0] = </span><span style="color: #3933ff">"-cp"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #7e504f">interOptions</span><span style="color: #000000">[1] = </span>"build/tests/"<span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[2] = </span><span style="color: #3933ff">"-pp"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[3] = </span><span style="color: #3933ff">"-f"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[4] = </span><span style="color: #3933ff">"J"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #7e504f">interOptions</span><span style="color: #000000">[5] = </span>"-keep-line-number"<span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[6] = </span><span style="color: #3933ff">"-coffi"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[7] = </span><span style="color: #3933ff">"-w"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[8] = </span><span style="color: #3933ff">"-p"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[9] = </span><span style="color: #3933ff">"cg.spark"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">interOptions<span style="color: #000000">[10] = </span><span style="color: #3933ff">"on"</span><span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #7e504f">interOptions</span><span style="color: #000000">[11] = </span>"-main-class"<span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #7e504f">interOptions</span><span style="color: #000000">[12] = </span>"edu.ntu.learn.feature.test.TestInputBranchDependencyInter"<span style="color: #000000">;</span></p>
<p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #7e504f">interOptions</span><span style="color: #000000">[13] = </span>"edu.ntu.learn.feature.test.TestInputBranchDependencyInter"<span style="color: #000000">;</span></p><p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #000000"><br></span></p><p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #000000"><br></span></p><p><font face="arial, sans-serif" size="2" color="#ff0000">It works fine by using the main method as the entry point, i.e., just call </font><span style="color: rgb(34, 34, 34); font-family: Monaco; font-size: 11px;">soot.Main.main(</span><span style="color: rgb(126, 80, 79); font-family: Monaco; font-size: 11px;">interOptions</span><span style="color: rgb(34, 34, 34); font-family: Monaco; font-size: 11px;">)</span></p><p style="color: rgb(57, 51, 255);"><span style="color: rgb(0, 0, 0);"><font face="arial, sans-serif" size="2"><br></font></span></p><p style="font-size: 11px; font-family: Monaco;">PackManager.v().getPack(<span style="color: #3933ff">"wjtp"</span>).add(<span style="color: #931a68">new</span> Transform(<span style="color: #3933ff">"wjtp.ifds"</span>, <span style="color: #931a68">new</span> SceneTransformer() {</p><p style="font-size: 11px; font-family: Monaco; min-height: 15px;"><span class="Apple-tab-span" style="white-space:pre">                        </span></p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">        </span><span style="color: #931a68">protected</span> <span style="color: #931a68">void</span> internalTransform(String <span style="color: #7e504f">phaseName</span>, Map<String, String> <span style="color: #7e504f">options</span>) {</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span>IFDSTabulationProblem<Unit,Local,SootMethod,InterproceduralCFG<Unit,SootMethod>> <span style="color: #7e504f">problem</span> = <span style="color: #931a68">new</span> IFDSLocalInfoFlow(<span style="color: #931a68">new </span>JimpleBasedInterproceduralCFG());<span class="Apple-tab-span" style="white-space:pre">                </span></p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span>IFDSSolver<Unit,Local,SootMethod,InterproceduralCFG<Unit,SootMethod>> <span style="color: #7e504f">solver</span> = <span style="color: #931a68">new</span> IFDSSolver<Unit,Local,SootMethod,InterproceduralCFG<Unit,SootMethod>>(<span style="color: #7e504f">problem</span>);<span class="Apple-tab-span" style="white-space:pre">        </span></p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span><span style="color: #7e504f">solver</span>.solve();</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span>Unit <span style="color: #7e504f">ret</span> = Scene.v().getMainMethod().getActiveBody().getUnits().getLast();</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span><span style="color: #931a68">for</span>(Local <span style="color: #7e504f">l</span>: <span style="color: #7e504f">solver</span>.ifdsResultsAt(<span style="color: #7e504f">ret</span>)) {</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                        </span>System.<span style="color: #0326cc">err</span>.println(<span style="color: #7e504f">l</span>);</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">                </span>}</p><p style="font-size: 11px; font-family: Monaco;"><span class="Apple-tab-span" style="white-space:pre">        </span>}</p><p style="font-size: 11px; font-family: Monaco; min-height: 15px;"><span class="Apple-tab-span" style="white-space:pre">                        </span></p><p style="font-size: 11px; font-family: Monaco;">}));</p><p style="color: rgb(57, 51, 255);">
</p><p style="font-size: 11px; font-family: Monaco;">soot.Main.main(<span style="color: #7e504f">interOptions</span>);</p><p style="font-size: 11px; font-family: Monaco;"><br></p><p style="font-size: 11px; font-family: Monaco;"><br></p><p><font color="#ff0000"><font face="arial, sans-serif" size="2">However, if I want to use a customized entry point following </font></font><a href="http://www.bodden.de/2012/07/26/soot-custom-entry-points/">http://www.bodden.de/2012/07/26/soot-custom-entry-points/</a><font face="arial, sans-serif" size="2" style="color: rgb(255, 0, 0);">, it t</font><span style="color: rgb(255, 0, 0); font-family: arial, sans-serif; font-size: small;">hrows the following exception.</span></p><p><font face="arial, sans-serif" size="2"><br></font></p><p style="font-size: 11px; font-family: Monaco;">Options.v().parse(<span style="color: #7e504f">interOptions</span>);</p><p style="font-size: 11px; font-family: Monaco; color: rgb(57, 51, 255);"><span style="color: #000000">SootClass </span><span style="color: #7e504f">c</span><span style="color: #000000"> = Scene.v().forceResolve(</span>"edu.ntu.learn.feature.test.TestInputBranchDependencyInter"<span style="color: #000000">, SootClass.</span><span style="color: #0326cc">BODIES</span><span style="color: #000000">);</span></p><p style="font-size: 11px; font-family: Monaco;"><span style="color: #7e504f">c</span>.setApplicationClass();</p><p style="font-size: 11px; font-family: Monaco;">Scene.v().loadNecessaryClasses();</p><p style="font-size: 11px; font-family: Monaco;">SootMethod <span style="color: #7e504f">method</span> = <span style="color: #7e504f">c</span>.getMethodByName(<span style="color: #3933ff">"m1"</span>);</p><p style="font-size: 11px; font-family: Monaco;">List<SootMethod> <span style="color: #7e504f">entryPoints</span> = <span style="color: #931a68">new</span> ArrayList<SootMethod>();</p><p style="font-size: 11px; font-family: Monaco; color: rgb(126, 80, 79);">entryPoints<span style="color: #000000">.add(</span>method<span style="color: #000000">);</span></p><p style="font-size: 11px; font-family: Monaco;">Scene.v().setEntryPoints(<span style="color: #7e504f">entryPoints</span>);</p><p>
</p><p style="font-size: 11px; font-family: Monaco;">PackManager.v().runPacks();</p><p style="font-size: 11px; font-family: Monaco;"><br></p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);">[Thread-1] ERROR heros.solver.IDESolver - Worker thread execution failed: null</p><p style="font-size: 11px; font-family: Monaco; color: rgb(4, 51, 255);"><span style="text-decoration: underline">java.lang.NullPointerException</span></p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.base.Preconditions.checkNotNull(<span style="text-decoration: underline ; color: #0433ff">Preconditions.java:191</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:3999</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.getOrLoad(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4004</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4874</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4880</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.getOrCreateUnitGraph(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:86</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:96</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:29</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver$PathEdgeProcessingTask.run(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:861</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor.runWorker(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:1145</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor$Worker.run(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:615</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.lang.Thread.run(<span style="text-decoration: underline ; color: #0433ff">Thread.java:745</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);">Exception in thread "Thread-1" Exception in thread "main" <span style="text-decoration: underline ; color: #0433ff">java.lang.NullPointerException</span></p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.base.Preconditions.checkNotNull(<span style="text-decoration: underline ; color: #0433ff">Preconditions.java:191</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:3999</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.getOrLoad(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4004</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4874</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4880</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.getOrCreateUnitGraph(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:86</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:96</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:29</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver$PathEdgeProcessingTask.run(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:861</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor.runWorker(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:1145</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor$Worker.run(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:615</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.lang.Thread.run(<span style="text-decoration: underline ; color: #0433ff">Thread.java:745</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span style="text-decoration: underline ; color: #0433ff">java.lang.RuntimeException</span>: There were exceptions during IDE analysis. Exiting.</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver.runExecutorAndAwaitCompletion(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:264</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver.awaitCompletionComputeValuesAndShutdown(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:233</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver.solve(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:207</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at edu.ntu.learn.feature.Main$4.internalTransform(<span style="text-decoration: underline ; color: #0433ff">Main.java:106</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.SceneTransformer.transform(<span style="text-decoration: underline ; color: #0433ff">SceneTransformer.java:39</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.Transform.apply(<span style="text-decoration: underline ; color: #0433ff">Transform.java:90</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.ScenePack.internalApply(<span style="text-decoration: underline ; color: #0433ff">ScenePack.java:40</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.Pack.apply(<span style="text-decoration: underline ; color: #0433ff">Pack.java:116</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.PackManager.runWholeProgramPacks(<span style="text-decoration: underline ; color: #0433ff">PackManager.java:565</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.PackManager.runPacksNormally(<span style="text-decoration: underline ; color: #0433ff">PackManager.java:457</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.PackManager.runPacks(<span style="text-decoration: underline ; color: #0433ff">PackManager.java:392</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at edu.ntu.learn.feature.Main.runTest2(<span style="text-decoration: underline ; color: #0433ff">Main.java:123</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at edu.ntu.learn.feature.Main.main(<span style="text-decoration: underline ; color: #0433ff">Main.java:153</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(4, 51, 255);"><span style="color: #ff2600">Caused by: </span><span style="text-decoration: underline">java.lang.NullPointerException</span></p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.base.Preconditions.checkNotNull(<span style="text-decoration: underline ; color: #0433ff">Preconditions.java:191</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:3999</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache.getOrLoad(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4004</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.get(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4874</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(<span style="text-decoration: underline ; color: #0433ff">LocalCache.java:4880</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.getOrCreateUnitGraph(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:86</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:96</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at soot.jimple.toolkits.ide.icfg.AbstractJimpleBasedICFG.isExitStmt(<span style="text-decoration: underline ; color: #0433ff">AbstractJimpleBasedICFG.java:29</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at heros.solver.IDESolver$PathEdgeProcessingTask.run(<span style="text-decoration: underline ; color: #0433ff">IDESolver.java:861</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor.runWorker(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:1145</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.util.concurrent.ThreadPoolExecutor$Worker.run(<span style="text-decoration: underline ; color: #0433ff">ThreadPoolExecutor.java:615</span>)</p><p style="font-size: 11px; font-family: Monaco;">
</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><span class="Apple-tab-span" style="white-space:pre">        </span>at java.lang.Thread.run(<span style="text-decoration: underline ; color: #0433ff">Thread.java:745</span>)</p><p style="font-size: 11px; font-family: Monaco; color: rgb(255, 38, 0);"><br></p><p><br></p><p>Is there anything I miss to use soot with a customized entry point? Please help to give some clues. Thanks.</p><p><br></p><p>Best wishes,</p><p>Bihuan</p></div></div>