📝 Overall Description
Hi,
Thanks for your hard work on Tai-e.
I encountered an IndexOutOfBoundsException while computing a PTA call graph for HSQLDB-2.7.4. CHA works fine.
Regards,
Sven
🎯 Expected Behavior
Analysis finishes without exception
🐛 Current Behavior
PTA call graph algorithm crashes with IndexOutOfBoundsException.
java -jar tai-e-all-0.5.4-SNAPSHOT.jar --main-class Entrypoint -java 25 --jre-dir /opt/jdk-25.0.3+9 --class-path /repo/entrypoint.jar:/repo/hsqldb-2.7.4.jar:/repo/sqltool-2.7.4.jar -scope ALL -a cg=algorithm:pta;dump:true;dump-methods:true --output-dir /tmp/tai-e10574779439875069482
[Tai-e] starts ...
Output directory: /tmp/tai-e10574779439875069482
Writing options to /tmp/tai-e10574779439875069482/options.yml
Writing log to /tmp/tai-e10574779439875069482/tai-e.log
java.version: 25.0.3
java.version.date: 2026-04-21
java.runtime.version: 25.0.3+9-LTS
java.vendor: Eclipse Adoptium
java.vendor.version: Temurin-25.0.3+9
os.name: Linux
os.version: 6.8.0-137-generic
os.arch: amd64
Available CPU cores: 160
Total memory: 2063668MB
Tai-e Version: 0.5.4-SNAPSHOT
Tai-e Commit: b2c584de67df5eb1b0b894687c2a085e1420f5a4
Writing analysis plan to /tmp/tai-e10574779439875069482/tai-e-plan.yml
[WorldBuilder] starts ...
Failed to resolve class java.lang.invoke.BoundMethodHandle$Species_J; resolving phantom class instead.
Failed to resolve class java.lang.invoke.BoundMethodHandle$Species_F; resolving phantom class instead.
7985 classes with 86300 methods in the world
[WorldBuilder] elapsed time: 1.40s; CPU usage: start 1.00%, peak 11.41%, end 43.67%; Memory usage: start 72MB, peak 488MB, end 649MB
[pta] starts ...
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 1 Size: 1
at java.base/java.util.ImmutableCollections$AbstractImmutableList.outOfBounds(ImmutableCollections.java:359)
at java.base/java.util.ImmutableCollections$List12.get(ImmutableCollections.java:612)
at pascal.taie.ir.DefaultIR.getParam(DefaultIR.java:92)
at pascal.taie.analysis.pta.core.solver.DefaultSolver.processCallEdge(DefaultSolver.java:518)
at pascal.taie.analysis.pta.core.solver.DefaultSolver.analyze(DefaultSolver.java:327)
at pascal.taie.analysis.pta.core.solver.DefaultSolver.solve(DefaultSolver.java:250)
at pascal.taie.analysis.pta.PointerAnalysis.runAnalysis(PointerAnalysis.java:120)
at pascal.taie.analysis.pta.PointerAnalysis.analyze(PointerAnalysis.java:108)
at pascal.taie.analysis.pta.PointerAnalysis.analyze(PointerAnalysis.java:65)
at pascal.taie.analysis.AnalysisManager.runProgramAnalysis(AnalysisManager.java:148)
at pascal.taie.analysis.AnalysisManager.runAnalysis(AnalysisManager.java:135)
at pascal.taie.analysis.AnalysisManager.lambda$execute$0(AnalysisManager.java:104)
at pascal.taie.util.Monitor.runAndCount(Monitor.java:249)
at pascal.taie.analysis.AnalysisManager.lambda$execute$1(AnalysisManager.java:103)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1604)
at pascal.taie.analysis.AnalysisManager.execute(AnalysisManager.java:102)
at pascal.taie.Main.executePlan(Main.java:155)
at pascal.taie.Main.lambda$main$0(Main.java:61)
at pascal.taie.util.Monitor.lambda$runAndCount$1(Monitor.java:280)
at pascal.taie.util.Monitor.runAndCount(Monitor.java:249)
at pascal.taie.util.Monitor.runAndCount(Monitor.java:279)
at pascal.taie.util.Monitor.runAndCount(Monitor.java:265)
at pascal.taie.Main.main(Main.java:51)
🔄 Reproducible Example
Here are the jars for you to reproduce: hsqldb-2.7.4-jars.tar.gz
⚙️ Tai-e Arguments
📜 Tai-e Log
No response
ℹ️ Additional Information
No response
📝 Overall Description
Hi,
Thanks for your hard work on Tai-e.
I encountered an
IndexOutOfBoundsExceptionwhile computing a PTA call graph for HSQLDB-2.7.4. CHA works fine.Regards,
Sven
🎯 Expected Behavior
Analysis finishes without exception
🐛 Current Behavior
PTA call graph algorithm crashes with IndexOutOfBoundsException.
🔄 Reproducible Example
Here are the jars for you to reproduce: hsqldb-2.7.4-jars.tar.gz
⚙️ Tai-e Arguments
📜 Tai-e Log
No response
ℹ️ Additional Information
No response