eclipse-jdt / eclipse-jdt/eclipse.jdt.core

StackOverflowError during "Computing additional info" and "Decoration Calculation"

Open
#4,410 7 comments 0 reactions 0 assignees View on GitHub
needinfo
Dominant language
Java
Stars
237
Forks
195
Avg merge
1d 10h
Merged PRs (30d)
49

Description

This gets triggered every time when I press ctrl in the Eclipse IDE. The only helpful thing that I can currently provide is the following log:

eclipse.buildId=4.37.0.20250905-1455
java.version=24.0.1
java.vendor=Eclipse Adoptium
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product

!ENTRY org.eclipse.ui 4 0 2025-09-18 15:53:17.537
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.StackOverflowError
at org.eclipse.jdt.core.Signature.getSimpleNames(Signature.java:2220)
at org.eclipse.jdt.internal.core.util.Util.getTrimmedSimpleNames(Util.java:1353)
at org.eclipse.jdt.internal.core.PackageFragmentRoot.getPackageFragment(PackageFragmentRoot.java:569)
at org.eclipse.jdt.internal.core.NameLookup.seekPackageFragments(NameLookup.java:1244)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:809)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:735)
at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:200)
at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:575)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.fromSplitPackageOrOracle(LookupEnvironment.java:472)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.lambda$1(LookupEnvironment.java:345)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForTypeFromModules(LookupEnvironment.java:439)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:344)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:274)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:626)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:325)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:284)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment$CompleteTypeBindingsSteps.perform(LookupEnvironment.java:189)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:629)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:151)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.accept(SelectionEngine.java:313)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:390)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:274)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:626)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:325)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:284)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment$CompleteTypeBindingsSteps.perform(LookupEnvironment.java:189)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:629)
at org.eclipse.jdt.internal.codeassist.impl.Engine.accept(Engine.java:151)
...

!ENTRY org.eclipse.core.jobs 4 2 2025-09-18 15:55:16.916
!MESSAGE An internal error occurred during: "Computing additional info".
!STACK 0
java.lang.StackOverflowError
at org.eclipse.jdt.core.Signature.getSimpleNames(Signature.java:2220)
at org.eclipse.jdt.internal.core.util.Util.getTrimmedSimpleNames(Util.java:1353)
at org.eclipse.jdt.internal.core.PackageFragmentRoot.getPackageFragment(PackageFragmentRoot.java:569)
at org.eclipse.jdt.internal.core.NameLookup.seekPackageFragments(NameLookup.java:1244)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:809)
at org.eclipse.jdt.internal.core.NameLookup.findType(NameLookup.java:735)
at org.eclipse.jdt.internal.core.SearchableEnvironment.find(SearchableEnvironment.java:200)
at org.eclipse.jdt.internal.core.SearchableEnvironment.findType(SearchableEnvironment.java:575)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.fromSplitPackageOrOracle(LookupEnvironment.java:472)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.lambda$1(LookupEnvironment.java:345)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForTypeFromModules(LookupEnvironment.java:439)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:344)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:274)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:626)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:325)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:284)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment$CompleteTypeBindingsSteps.perform(LookupEnvironment.java:189)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:629)
at org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.accept(HierarchyResolver.java:213)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.askForType(LookupEnvironment.java:390)
at org.eclipse.jdt.internal.compiler.lookup.PackageBinding.getTypeOrPackage(PackageBinding.java:274)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.findImport(CompilationUnitScope.java:626)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.resolveImports(CompilationUnitScope.java:325)
at org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope.checkAndSetImports(CompilationUnitScope.java:284)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment$CompleteTypeBindingsSteps.perform(LookupEnvironment.java:189)
at org.eclipse.jdt.internal.compiler.lookup.LookupEnvironment.completeTypeBindings(LookupEnvironment.java:629)
at org.eclipse.jdt.internal.core.hierarchy.HierarchyResolver.accept(HierarchyResolver.java:213)
...

Contributor guide

Open the contributing guide

Research direction

Reproduce the failure by pressing Ctrl in Eclipse and trace the repeated calls in the stack, starting with LookupEnvironment.askForType, CompilationUnitScope.resolveImports, PackageBinding.getTypeOrPackage, and the code-assist or hierarchy entry points. Inspect the interactions among Signature.getSimpleNames, NameLookup.findType, and HierarchyResolver.accept; done means the reported action no longer ends in a StackOverflowError during additional-info or decoration calculation.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.