-
Notifications
You must be signed in to change notification settings - Fork 197
Open
Description
Minecraft Development for IntelliJ plugin version
2024.2-1.8.5
IntelliJ version
2024.2.3
Operating System
Windows 10
Target platform
Fabric
Description of the bug
I keep getting this IDE error when trying to use a specific mixin (specifically, in LivingEntity#damage
). It's a perfectly valid mixin, I believe, and compiles fine, but the highlighting is wrong for the entire method.

During querying provider Mixin element line marker (class com.demonwav.mcdev.platform.mixin.insight.MixinElementLineMarkerProvider)
java.lang.ArrayIndexOutOfBoundsException: Index 15 out of bounds for length 15
at com.demonwav.mcdev.platform.mixin.util.LocalVariables.doGetLocals$handleFrame(LocalVariables.kt:587)
at com.demonwav.mcdev.platform.mixin.util.LocalVariables.doGetLocals(LocalVariables.kt:622)
at com.demonwav.mcdev.platform.mixin.util.LocalVariables.getLocals(LocalVariables.kt:407)
at com.demonwav.mcdev.platform.mixin.util.LocalVariables.getLocals(LocalVariables.kt:396)
at com.demonwav.mcdev.platform.mixin.util.LocalInfo.getLocals(LocalInfo.kt:67)
at com.demonwav.mcdev.platform.mixin.util.LocalInfo.matchLocals(LocalInfo.kt:79)
at com.demonwav.mcdev.platform.mixin.util.LocalInfo.matchLocals$default(LocalInfo.kt:71)
at com.demonwav.mcdev.platform.mixin.handlers.injectionPoint.AbstractLoadInjectionPoint$MyCollectVisitor$accept$1.invokeSuspend(LoadInjectionPoint.kt:309)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:129)
at kotlin.sequences.TransformingSequence$iterator$1.hasNext(Sequences.kt:214)
at kotlin.sequences.TransformingSequence$iterator$1.hasNext(Sequences.kt:214)
at com.demonwav.mcdev.util.SequencesKt$memoized$1.invokeSuspend(sequences.kt:42)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:129)
at com.demonwav.mcdev.platform.mixin.handlers.injectionPoint.CollectVisitor.visit(InjectionPoint.kt:357)
at com.demonwav.mcdev.platform.mixin.handlers.injectionPoint.AtResolver.isUnresolved(AtResolver.kt:194)
at com.demonwav.mcdev.platform.mixin.handlers.InjectorAnnotationHandler.isUnresolved(InjectorAnnotationHandler.kt:105)
at com.demonwav.mcdev.platform.mixin.handlers.InjectorAnnotationHandler.isUnresolved(InjectorAnnotationHandler.kt:92)
at com.demonwav.mcdev.platform.mixin.handlers.MixinAnnotationHandler.isUnresolved(MixinAnnotationHandler.kt:57)
at com.demonwav.mcdev.platform.mixin.insight.MixinElementLineMarkerProvider.getLineMarkerInfo(MixinElementLineMarkerProvider.kt:69)
at com.intellij.codeInsight.daemon.impl.LineMarkersPass.queryProviders(LineMarkersPass.java:180)
at com.intellij.codeInsight.daemon.impl.LineMarkersPass.lambda$doCollectMarkers$2(LineMarkersPass.java:108)
at com.intellij.codeInsight.daemon.impl.Divider.divideInsideAndOutsideInOneRoot(Divider.java:97)
at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectMarkers(LineMarkersPass.java:104)
at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectInformation(LineMarkersPass.java:77)
at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:67)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:431)
at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.runWithSpanIgnoreThrows(trace.kt:118)
at com.intellij.platform.diagnostic.telemetry.helpers.TraceUtil.runWithSpanThrows(TraceUtil.java:36)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$3(PassExecutorService.java:426)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.tryRunReadAction(AnyThreadWriteThreadingSupport.kt:291)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:965)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$4(PassExecutorService.java:417)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:660)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:735)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:691)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:659)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:79)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:416)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:392)
at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.cacheFileTypesInside(FileTypeManagerImpl.java:802)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$1(PassExecutorService.java:392)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.executeByImpatientReader(AnyThreadWriteThreadingSupport.kt:486)
at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:178)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:390)
at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:259)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1491)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:2073)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2035)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)