Skip to content

-opt:l:method throws ArrayIndexOutOfBoundsException #12229

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
1 task done
da-tubi opened this issue Nov 17, 2020 · 6 comments
Closed
1 task done

-opt:l:method throws ArrayIndexOutOfBoundsException #12229

da-tubi opened this issue Nov 17, 2020 · 6 comments

Comments

@da-tubi
Copy link

da-tubi commented Nov 17, 2020

reproduction steps

using Scala (2.12.11, 2.12.12),

  • A small reproducer

problem

[error] java.lang.ArrayIndexOutOfBoundsException: Index 533 out of bounds for length 533
[error]         at scala.tools.asm.ClassReader.readUtf(ClassReader.java:3671)
[error]         at scala.tools.asm.ClassReader.readUtf(ClassReader.java:3651)
[error]         at scala.tools.asm.ClassReader.readUTF8(ClassReader.java:3632)
[error]         at scala.tools.nsc.backend.jvm.opt.InlineInfoAttribute.nextUTF8$1(InlineInfoAttribute.scala:98)
[error]         at scala.tools.nsc.backend.jvm.opt.InlineInfoAttribute.$anonfun$read$1(InlineInfoAttribute.scala:119)
[error]         at scala.tools.nsc.backend.jvm.opt.InlineInfoAttribute.$anonfun$read$1$adapted(InlineInfoAttribute.scala:117)
[error]         at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:273)
[error]         at scala.collection.immutable.Range.foreach(Range.scala:158)
[error]         at scala.collection.TraversableLike.map(TraversableLike.scala:273)
[error]         at scala.collection.TraversableLike.map$(TraversableLike.scala:266)
[error]         at scala.collection.AbstractTraversable.map(Traversable.scala:108)
[error]         at scala.tools.nsc.backend.jvm.opt.InlineInfoAttribute.read(InlineInfoAttribute.scala:117)
[error]         at scala.tools.nsc.backend.jvm.opt.InlineInfoAttribute.read(InlineInfoAttribute.scala:40)
[error]         at scala.tools.asm.ClassReader.readAttribute(ClassReader.java:3507)
[error]         at scala.tools.asm.ClassReader.accept(ClassReader.java:526)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.$anonfun$parseClass$1(ByteCodeRepository.scala:286)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.parseClass(ByteCodeRepository.scala:277)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.$anonfun$parsedClassNode$1(ByteCodeRepository.scala:71)
[error]         at scala.collection.mutable.MapLike.getOrElseUpdate(MapLike.scala:209)
[error]         at scala.collection.mutable.MapLike.getOrElseUpdate$(MapLike.scala:206)
[error]         at scala.collection.mutable.AbstractMap.getOrElseUpdate(Map.scala:84)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.parsedClassNode(ByteCodeRepository.scala:71)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.classNode(ByteCodeRepository.scala:92)
[error]         at scala.tools.nsc.backend.jvm.opt.ByteCodeRepository.methodNode(ByteCodeRepository.scala:240)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.$anonfun$addMethod$2(CallGraph.scala:161)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.$anonfun$addMethod$2$adapted(CallGraph.scala:158)
[error]         at scala.collection.Iterator.foreach(Iterator.scala:943)
[error]         at scala.collection.Iterator.foreach$(Iterator.scala:943)
[error]         at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.addMethod(CallGraph.scala:158)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.$anonfun$addClass$1(CallGraph.scala:117)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.$anonfun$addClass$1$adapted(CallGraph.scala:117)
[error]         at scala.collection.Iterator.foreach(Iterator.scala:943)
[error]         at scala.collection.Iterator.foreach$(Iterator.scala:943)
[error]         at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
[error]         at scala.collection.IterableLike.foreach(IterableLike.scala:74)
[error]         at scala.collection.IterableLike.foreach$(IterableLike.scala:73)
[error]         at scala.collection.AbstractIterable.foreach(Iterable.scala:56)
[error]         at scala.tools.nsc.backend.jvm.opt.CallGraph.addClass(CallGraph.scala:117)
[error]         at scala.tools.nsc.backend.jvm.PostProcessor.$anonfun$runGlobalOptimizations$5(PostProcessor.scala:119)
[error]         at scala.tools.nsc.backend.jvm.PostProcessor.$anonfun$runGlobalOptimizations$5$adapted(PostProcessor.scala:117)
[error]         at scala.collection.TraversableLike$WithFilter.$anonfun$foreach$1(TraversableLike.scala:912)
[error]         at scala.collection.immutable.List.foreach(List.scala:392)
[error]         at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:911)
[error]         at scala.tools.nsc.backend.jvm.PostProcessor.$anonfun$runGlobalOptimizations$3(PostProcessor.scala:117)
[error]         at scala.tools.nsc.backend.jvm.PostProcessor.$anonfun$runGlobalOptimizations$3$adapted(PostProcessor.scala:117)
[error]         at scala.collection.immutable.List.foreach(List.scala:392)
[error]         at scala.tools.nsc.backend.jvm.PostProcessor.runGlobalOptimizations(PostProcessor.scala:117)
[error]         at scala.tools.nsc.backend.jvm.GeneratedClassHandler$GlobalOptimisingGeneratedClassHandler.complete(GeneratedClassHandler.scala:92)
[error]         at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.$anonfun$run$1(GenBCode.scala:81)
[error]         at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.run(GenBCode.scala:78)
[error]         at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1501)
[error]         at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1485)
[error]         at scala.tools.nsc.Global$Run.compileSources(Global.scala:1478)
[error]         at scala.tools.nsc.Global$Run.compile(Global.scala:1604)
[error]         at xsbt.CachedCompiler0.run(CompilerInterface.scala:153)
[error]         at xsbt.CachedCompiler0.run(CompilerInterface.scala:125)
[error]         at xsbt.CompilerInterface.run(CompilerInterface.scala:39)
[error]         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[error]         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[error]         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[error]         at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[error]         at sbt.internal.inc.AnalyzingCompiler.call(AnalyzingCompiler.scala:248)
[error]         at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:122)
[error]         at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:95)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:91)
[error]         at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:186)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3(MixedAnalyzingCompiler.scala:82)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3$adapted(MixedAnalyzingCompiler.scala:77)
[error]         at sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:215)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:77)
[error]         at sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:146)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:343)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:343)
[error]         at sbt.internal.inc.Incremental$.doCompile(Incremental.scala:120)
[error]         at sbt.internal.inc.Incremental$.$anonfun$compile$4(Incremental.scala:100)
[error]         at sbt.internal.inc.IncrementalCommon.recompileClasses(IncrementalCommon.scala:180)
[error]         at sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:98)
[error]         at sbt.internal.inc.Incremental$.$anonfun$compile$3(Incremental.scala:102)
[error]         at sbt.internal.inc.Incremental$.manageClassfiles(Incremental.scala:155)
[error]         at sbt.internal.inc.Incremental$.compile(Incremental.scala:92)
[error]         at sbt.internal.inc.IncrementalCompile$.apply(Compile.scala:75)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:348)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:301)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:168)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:248)
[error]         at sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:74)
[error]         at sbt.Defaults$.compileIncrementalTaskImpl(Defaults.scala:1765)
[error]         at sbt.Defaults$.$anonfun$compileIncrementalTask$1(Defaults.scala:1738)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:67)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:281)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:19)
[error]         at sbt.Execute.work(Execute.scala:290)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:281)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[error]         at java.base/java.lang.Thread.run(Thread.java:834)
[error] (core / Compile / compileIncremental) java.lang.ArrayIndexOutOfBoundsException: Index 533 out of bounds for length 533
@da-liii
Copy link

da-liii commented Nov 17, 2020

Here is the reproducer: https://github.com/sadhen/bug_12229

@da-liii
Copy link

da-liii commented Nov 17, 2020

Related: #11247

@da-liii
Copy link

da-liii commented Nov 17, 2020

To reproduce the problem:

sbt 'set scalaVersion := "2.12.12"' 'set scalacOptions in ThisBuild ++= Seq("-opt:closure-invocations")' compile

@SethTisue
Copy link
Member

is it also reproducible in 2.13.3?

@som-snytt
Copy link

Closing as duplicate of #11247 which has diagnosis.

@da-liii
Copy link

da-liii commented Nov 18, 2020

Apache Spark does not support Scala 2.13 yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants