Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 579370

Summary: ArrayIndexOutOfBoundsException at org.eclipse.jdt.internal.compiler.problem.ProblemReporter.invalidType
Product: [Eclipse Project] JDT Reporter: Patric Rufflar <patric>
Component: CoreAssignee: JDT-Core-Inbox <jdt-core-inbox>
Status: CLOSED MOVED QA Contact:
Severity: normal    
Priority: P3 CC: simeon.danailov.andreev
Version: 4.23   
Target Milestone: ---   
Hardware: PC   
OS: Windows 10   
Whiteboard:

Description Patric Rufflar CLA 2022-03-22 12:44:46 EDT
Upgraded to 4.23 and after a few hours of work, I got the following exception (occurred multiple times):

java.lang.ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 2
      at org.eclipse.jdt.internal.compiler.problem.ProblemReporter.invalidType(ProblemReporter.java:4909)
      at org.eclipse.jdt.internal.compiler.ast.TypeReference.reportInvalidType(TypeReference.java:593)
      at org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference.internalResolveLeafType(ParameterizedQualifiedTypeReference.java:223)
      at org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference.internalResolveType(ParameterizedQualifiedTypeReference.java:206)
      at org.eclipse.jdt.internal.compiler.ast.ParameterizedQualifiedTypeReference.resolveType(ParameterizedQualifiedTypeReference.java:472)
      at org.eclipse.jdt.internal.compiler.ast.TypeReference.resolveType(TypeReference.java:621)
      at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesWithSuspendedTempErrorHandlingPolicy(SourceTypeBinding.java:2803)
      at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.resolveTypesFor(SourceTypeBinding.java:2705)
      at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.methods(SourceTypeBinding.java:2276)
      at org.eclipse.jdt.internal.compiler.lookup.SourceTypeBinding.getMethods(SourceTypeBinding.java:1914)
      at org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding.getMethods(ReferenceBinding.java:1153)
      at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1692)
      at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1654)
      at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:803)
      at org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.resolve(LocalDeclaration.java:390)
      at org.eclipse.jdt.internal.compiler.ast.LocalDeclaration.resolve(LocalDeclaration.java:259)
      at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:661)
      at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:362)
      at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:570)
      at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1503)
      at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1628)
      at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:667)
      at org.eclipse.jdt.internal.core.search.matching.MatchLocator.process(MatchLocator.java:2023)
      at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1353)
      at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1390)
      at org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches(MatchLocator.java:1532)
      at org.eclipse.jdt.internal.core.search.JavaSearchParticipant.locateMatches(JavaSearchParticipant.java:135)
      at org.eclipse.jdt.internal.core.search.BasicSearchEngine.findMatches(BasicSearchEngine.java:251)
      at org.eclipse.jdt.internal.core.search.BasicSearchEngine.search(BasicSearchEngine.java:602)
      at org.eclipse.jdt.core.search.SearchEngine.search(SearchEngine.java:670)
      at org.eclipse.jdt.internal.corext.callhierarchy.CallerMethodWrapper.findChildren(CallerMethodWrapper.java:155)
      at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.performSearch(MethodWrapper.java:266)
      at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.doFindChildren(MethodWrapper.java:197)
      at org.eclipse.jdt.internal.corext.callhierarchy.MethodWrapper.getCalls(MethodWrapper.java:88)
      at org.eclipse.jdt.internal.ui.callhierarchy.DeferredMethodWrapper.getCalls(DeferredMethodWrapper.java:70)
      at org.eclipse.jdt.internal.ui.callhierarchy.DeferredMethodWrapper.fetchDeferredChildren(DeferredMethodWrapper.java:78)
      at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:219)
      at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)




eclipse.buildId=4.23.0.I20220308-0310
java.version=11.0.2
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product -data ../workspace
Comment 1 Simeon Andreev CLA 2023-03-17 15:36:51 EDT
Should be fixed via: https://github.com/eclipse-jdt/eclipse.jdt.core/issues/286