I was trying to make a Mixin class for net.minecraft.client.gui.Gui in MC 1.20.4 (MultiLoader project). The exception breaks all auto-complete stuff in the Mixin class as soon as I add the @Mixin annotation, even if it's not related to the plugin.
It breaks at a method-local inner class (record) in displayScoreboardSidebar().
com.intellij.util.IncorrectOperationException: Incorrect method 'public <T> net.minecraft.client.gui.Gui.1DisplayEntry[] lambda$displayScoreboardSidebar$3(int par1) { /* compiled code */ return null; }'
at com.intellij.psi.impl.PsiJavaParserFacadeImpl.newException(PsiJavaParserFacadeImpl.java:407)
at com.intellij.psi.impl.PsiJavaParserFacadeImpl.createMethodFromText(PsiJavaParserFacadeImpl.java:203)
at com.intellij.psi.impl.PsiElementFactoryImpl.createMethodFromText(PsiElementFactoryImpl.java:705)
at com.intellij.psi.impl.PsiJavaParserFacadeImpl.createMethodFromText(PsiJavaParserFacadeImpl.java:212)
at com.demonwav.mcdev.platform.mixin.util.AsmUtilKt.findOrConstructSourceMethod(AsmUtil.kt:800)
at com.demonwav.mcdev.platform.mixin.util.AsmUtilKt.findOrConstructSourceMethod$default(AsmUtil.kt:732)
at com.demonwav.mcdev.platform.mixin.completion.MixinMethodLookupItem$Companion.create(MixinLookupItem.kt:61)
at com.demonwav.mcdev.platform.mixin.completion.MixinLookupItemKt.createLookupElement(MixinLookupItem.kt:46)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor$fillCompletionVariants$1$1.invoke(MixinCompletionContributor.kt:110)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor$fillCompletionVariants$1$1.invoke(MixinCompletionContributor.kt:110)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:170)
at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:169)
at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
at kotlin.sequences.TransformingSequence$iterator$1.hasNext(Sequences.kt:214)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor$fillCompletionVariants$1.invoke(MixinCompletionContributor.kt:119)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor$fillCompletionVariants$1.invoke(MixinCompletionContributor.kt:68)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor.fillCompletionVariants$lambda$1(MixinCompletionContributor.kt:68)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.processReference(LegacyCompletionContributor.java:141)
at com.intellij.codeInsight.completion.LegacyCompletionContributor.processReferences(LegacyCompletionContributor.java:124)
at com.demonwav.mcdev.platform.mixin.completion.MixinCompletionContributor.fillCompletionVariants(MixinCompletionContributor.kt:68)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributor(CompletionService.java:81)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.getVariantsFromContributor(CompletionServiceImpl.kt:219)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:73)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:150)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:138)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:128)
at com.intellij.codeInsight.completion.JavaQualifierAsArgumentContributor.fillCompletionVariants(JavaQualifierAsArgumentContributor.java:46)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributor(CompletionService.java:81)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.getVariantsFromContributor(CompletionServiceImpl.kt:219)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:73)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:150)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:138)
at com.intellij.codeInsight.completion.JShellCompletionContributor.fillCompletionVariants(JShellCompletionContributor.java:28)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributor(CompletionService.java:81)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.getVariantsFromContributor(CompletionServiceImpl.kt:219)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:73)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:150)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:138)
at com.intellij.codeInsight.completion.JavaNoVariantsDelegator.fillCompletionVariants(JavaNoVariantsDelegator.java:46)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributor(CompletionService.java:81)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.getVariantsFromContributor(CompletionServiceImpl.kt:219)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:73)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:150)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:142)
at com.intellij.codeInsight.completion.CompletionResultSet.runRemainingContributors(CompletionResultSet.java:138)
at com.intellij.codeInsight.template.impl.LiveTemplateCompletionContributor$1.addCompletions(LiveTemplateCompletionContributor.java:87)
at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:23)
at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:156)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributor(CompletionService.java:81)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.getVariantsFromContributor(CompletionServiceImpl.kt:219)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:73)
at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:56)
at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:130)
at com.intellij.codeInsight.completion.BaseCompletionService.performCompletion(BaseCompletionService.java:48)
at com.intellij.codeInsight.completion.impl.CompletionServiceImpl.performCompletion(CompletionServiceImpl.kt:234)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.lambda$calculateItems$12(CompletionProgressIndicator.java:973)
at com.intellij.util.indexing.FileBasedIndex.lambda$ignoreDumbMode$0(FileBasedIndex.java:219)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.util.indexing.FileBasedIndexEx.ignoreDumbMode(FileBasedIndexEx.java:637)
at com.intellij.util.indexing.FileBasedIndex.ignoreDumbMode(FileBasedIndex.java:218)
at com.intellij.util.indexing.DumbModeAccessType.ignoreDumbMode(DumbModeAccessType.java:43)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.calculateItems(CompletionProgressIndicator.java:969)
at com.intellij.codeInsight.completion.CompletionProgressIndicator.runContributors(CompletionProgressIndicator.java:957)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$7(CodeCompletionHandlerBase.java:383)
at io.opentelemetry.context.Context.lambda$wrap$1(Context.java:212)
at com.intellij.codeInsight.completion.CompletionThreadingKt.tryReadOrCancel$lambda$0(CompletionThreading.kt:76)
at com.intellij.openapi.application.impl.RwLockHolder.tryRunReadAction(RwLockHolder.kt:310)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:958)
at com.intellij.codeInsight.completion.CompletionThreadingKt.tryReadOrCancel(CompletionThreading.kt:74)
at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$8(CodeCompletionHandlerBase.java:375)
at io.opentelemetry.context.Context.lambda$wrap$1(Context.java:212)
at com.intellij.codeInsight.completion.AsyncCompletion.startThread$lambda$1$lambda$0(CompletionThreading.kt:98)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:217)
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.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:202)
at com.intellij.codeInsight.completion.AsyncCompletion.startThread$lambda$1(CompletionThreading.kt:93)
at com.intellij.codeInsight.completion.AsyncCompletion$startThread$future$1.invokeSuspend(CompletionThreading.kt:104)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Caused by: java.lang.AssertionError: Unexpected token: '.1D'
at com.intellij.lang.java.parser.BasicJavaParserUtil.parseFragment(BasicJavaParserUtil.java:211)
at com.intellij.psi.impl.source.BasicJavaElementType$JavaDummyElementType.parseContents(BasicJavaElementType.java:273)
at com.intellij.psi.impl.source.tree.LazyParseableElement.lambda$ensureParsed$2(LazyParseableElement.java:183)
at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:535)
at com.intellij.psi.impl.source.tree.LazyParseableElement.ensureParsed(LazyParseableElement.java:182)
at com.intellij.psi.impl.source.tree.LazyParseableElement.getFirstChildNode(LazyParseableElement.java:234)
at com.intellij.psi.impl.source.BasicJavaDummyElement.getFirstChildNode(BasicJavaDummyElement.java:56)
at com.intellij.psi.impl.PsiJavaParserFacadeImpl.createMethodFromText(PsiJavaParserFacadeImpl.java:201)
... 92 more
Minecraft Development for IntelliJ plugin version
2024.1-1.7.4-473
IntelliJ version
IC-241.14494.240
Operating System
Windows 10
Target platform
Mixins
Description of the bug
I was trying to make a Mixin class for
net.minecraft.client.gui.Gui
in MC 1.20.4 (MultiLoader project). The exception breaks all auto-complete stuff in the Mixin class as soon as I add the@Mixin
annotation, even if it's not related to the plugin.It breaks at a method-local inner class (record) in
displayScoreboardSidebar()
.