JetBrains / Arend

The Arend Proof Assistant
https://arend-lang.github.io/
Apache License 2.0
690 stars 33 forks source link

ConcurrentModificationException in CachingDefinitionRenamer #346

Open alex999990009 opened 3 weeks ago

alex999990009 commented 3 weeks ago
java.util.ConcurrentModificationException
    at java.base/java.util.HashMap.computeIfAbsent(HashMap.java:1221)
    at org.arend.extImpl.definitionRenamer.CachingDefinitionRenamer.renameDefinition(CachingDefinitionRenamer.java:21)
    at org.arend.term.prettyprint.CollectFreeVariablesVisitor.visitDefCall(CollectFreeVariablesVisitor.java:130)
    at org.arend.term.prettyprint.CollectFreeVariablesVisitor.visitDefCall(CollectFreeVariablesVisitor.java:18)
    at org.arend.core.expr.visitor.VoidExpressionVisitor.visitClassCall(VoidExpressionVisitor.java:65)
    at org.arend.core.expr.visitor.VoidExpressionVisitor.visitClassCall(VoidExpressionVisitor.java:13)
    at org.arend.core.expr.ClassCallExpression.accept(ClassCallExpression.java:515)
    at org.arend.term.prettyprint.ToAbstractVisitor.convert(ToAbstractVisitor.java:110)
    at org.arend.term.prettyprint.ToAbstractVisitor.convert(ToAbstractVisitor.java:93)
    at org.arend.term.prettyprint.ToAbstractVisitor.convert(ToAbstractVisitor.java:85)
    at org.arend.core.expr.Expression.prettyPrint(Expression.java:104)
    at org.arend.ext.prettyprinting.doc.TermDoc.getString(TermDoc.java:37)
    at org.arend.ext.prettyprinting.doc.CachingDoc.getText(CachingDoc.java:17)
    at org.arend.ext.prettyprinting.doc.CachingDoc.isSingleLine(CachingDoc.java:48)
    at org.arend.ext.prettyprinting.doc.HangDoc.needNewLine(HangDoc.java:113)
    at org.arend.ext.prettyprinting.doc.HangDoc.getHeight(HangDoc.java:63)
    at org.arend.ext.prettyprinting.doc.VListDoc.isSingleLine(VListDoc.java:58)
    at org.arend.ext.prettyprinting.doc.HangDoc.linearize(HangDoc.java:93)
    at org.arend.ext.prettyprinting.doc.HangDoc.linearize(HangDoc.java:86)
    at org.arend.ext.prettyprinting.doc.VListDoc.linearize(VListDoc.java:85)
    at org.arend.ext.prettyprinting.doc.Doc.linearize(Doc.java:23)
    at org.arend.ext.prettyprinting.doc.LineDocVisitor.visitDoc(LineDocVisitor.java:7)
    at org.arend.ext.prettyprinting.doc.LineDocVisitor.visitVList(LineDocVisitor.java:15)
    at org.arend.ext.prettyprinting.doc.LineDocVisitor.visitVList(LineDocVisitor.java:5)
    at org.arend.ext.prettyprinting.doc.VListDoc.accept(VListDoc.java:23)
    at org.arend.ext.prettyprinting.doc.DocStringBuilder.build(DocStringBuilder.java:14)
    at org.arend.ext.prettyprinting.doc.Doc.toString(Doc.java:28)
    at java.base/java.lang.String.valueOf(String.java:4220)
    at org.arend.toolWindow.errors.ArendMessagesView.updateEditors$lambda$13$lambda$12(ArendMessagesView.kt:221)
    at com.intellij.openapi.application.ActionsKt.runReadAction$lambda$3(actions.kt:31)
    at com.intellij.openapi.application.impl.RwLockHolder.runReadAction(RwLockHolder.kt:271)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:845)
    at com.intellij.openapi.application.ActionsKt.runReadAction(actions.kt:31)
    at org.arend.toolWindow.errors.ArendMessagesView.updateEditors$lambda$13(ArendMessagesView.kt:200)
    at com.intellij.openapi.application.impl.RwLockHolder$executeOnPooledThread$1.run(RwLockHolder.kt:154)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
    at java.base/java.lang.Thread.run(Thread.java:840)