Skip to content
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

Scaladoc: bad constant pool tag 19 #11635

Closed
hmf opened this issue Jul 16, 2019 · 17 comments
Closed

Scaladoc: bad constant pool tag 19 #11635

hmf opened this issue Jul 16, 2019 · 17 comments
Assignees
Milestone

Comments

@hmf
Copy link

hmf commented Jul 16, 2019

steps

build.sbt

ThisBuild / scalaVersion := "2.12.8"

lazy val root = (project in file("."))
  .settings(
    name := "javamod"
  )

Hello.scala

/** @see [[toBytes(i:java\.time\.Instant* ]] */
class Hello
  1. Using JDK 11, run doc from sbt shell.

problem

sbt:javamod> doc
[info] Updating ...
[info] Done updating.
[info] Main Scala API documentation to /private/tmp/javamod/target/scala-2.12/api...
model contains 2 documentable templates
[error]
[error]   bad constant pool tag 19 at byte 58
[error]      while compiling: /private/tmp/javamod/Hello.scala
[error]         during phase: globalPhase=terminal, enteringPhase=parser
[error]      library version: version 2.12.8
[error]     compiler version: version 2.12.8
[error]   reconstructed args: -d /private/tmp/javamod/target/scala-2.12/api -classpath dummy_3db15a5e -bootclasspath /Users/eed3si9n/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.8.jar
[error]
[error]   last tree to typer: Literal(Constant(()))
[error]        tree position: line 2 of /private/tmp/javamod/Hello.scala
[error]             tree tpe: Unit
[error]               symbol: null
[error]            call site: constructor Hello in class Hello in package <empty>
[error]
[error] == Source file context for tree position ==
[error]
[error]      1 /** @see [[toBytes(i:java\.time\.Instant* ]] */
[error]      2 class Hello
[error]      3
[error] scala.reflect.internal.FatalError:
[error]   bad constant pool tag 19 at byte 58
[error]      while compiling: /private/tmp/javamod/Hello.scala
[error]         during phase: globalPhase=terminal, enteringPhase=parser
[error]      library version: version 2.12.8
[error]     compiler version: version 2.12.8
[error]   reconstructed args: -d /private/tmp/javamod/target/scala-2.12/api -classpath dummy_3db15a5e -bootclasspath /Users/eed3si9n/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.8.jar
[error]
[error]   last tree to typer: Literal(Constant(()))
[error]        tree position: line 2 of /private/tmp/javamod/Hello.scala
[error]             tree tpe: Unit
[error]               symbol: null
[error]            call site: constructor Hello in class Hello in package <empty>
[error]
[error] == Source file context for tree position ==
[error]
[error]      1 /** @see [[toBytes(i:java\.time\.Instant* ]] */
[error]      2 class Hello
[error]      3
[error] 	at scala.reflect.internal.Reporting.abort(Reporting.scala:68)
[error] 	at scala.reflect.internal.Reporting.abort$(Reporting.scala:64)
[error] 	at scala.reflect.internal.SymbolTable.abort(SymbolTable.scala:27)
[error] 	at scala.tools.nsc.symtab.classfile.ClassfileParser$ConstantPool.errorBadTag(ClassfileParser.scala:372)
[error] 	at scala.tools.nsc.symtab.classfile.ClassfileParser$ConstantPool.<init>(ClassfileParser.scala:197)
[error] 	at scala.tools.nsc.symtab.SymbolLoaders$ClassfileLoader$classfileParser$.newConstantPool(SymbolLoaders.scala:310)
[error] 	at scala.tools.nsc.symtab.classfile.ClassfileParser.$anonfun$parse$1(ClassfileParser.scala:161)
[error] 	at scala.tools.nsc.symtab.classfile.ClassfileParser.parse(ClassfileParser.scala:133)
[error] 	at scala.tools.nsc.symtab.SymbolLoaders$ClassfileLoader.doComplete(SymbolLoaders.scala:332)
[error] 	at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:231)
[error] 	at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1542)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.$anonfun$lookupInTemplate$4(MemberLookupBase.scala:161)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.$anonfun$lookupInTemplate$4$adapted(MemberLookupBase.scala:161)
[error] 	at scala.collection.TraversableLike.$anonfun$filterImpl$1(TraversableLike.scala:251)
[error] 	at scala.collection.immutable.List.foreach(List.scala:392)
[error] 	at scala.collection.TraversableLike.filterImpl(TraversableLike.scala:250)
[error] 	at scala.collection.TraversableLike.filterImpl$(TraversableLike.scala:248)
[error] 	at scala.collection.AbstractTraversable.filterImpl(Traversable.scala:108)
[error] 	at scala.collection.TraversableLike.filter(TraversableLike.scala:262)
[error] 	at scala.collection.TraversableLike.filter$(TraversableLike.scala:262)
[error] 	at scala.collection.AbstractTraversable.filter(Traversable.scala:108)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.cleanupBogusClasses$1(MemberLookupBase.scala:161)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.lookupInTemplate(MemberLookupBase.scala:172)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.lookupInTemplate(MemberLookupBase.scala:136)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.lookupInRootPackage(MemberLookupBase.scala:123)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.memberLookup(MemberLookupBase.scala:64)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase.memberLookup$(MemberLookupBase.scala:60)
[error] 	at scala.tools.nsc.doc.DocFactory$$anon$2.memberLookup(DocFactory.scala:75)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase$$anon$1.link$lzycompute(MemberLookupBase.scala:39)
[error] 	at scala.tools.nsc.doc.base.MemberLookupBase$$anon$1.link(MemberLookupBase.scala:39)
[error] 	at scala.tools.nsc.doc.base.comment.EntityLink$.unapply(Body.scala:90)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.inlineToHtml(HtmlPage.scala:141)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.inlineToHtml(HtmlPage.scala:139)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.$anonfun$inlineToHtml$1(HtmlPage.scala:130)
[error] 	at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:244)
[error] 	at scala.collection.immutable.List.foreach(List.scala:392)
[error] 	at scala.collection.TraversableLike.flatMap(TraversableLike.scala:244)
[error] 	at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:241)
[error] 	at scala.collection.immutable.List.flatMap(List.scala:355)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.inlineToHtml(HtmlPage.scala:130)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.blockToHtml(HtmlPage.scala:103)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.$anonfun$bodyToHtml$1(HtmlPage.scala:96)
[error] 	at scala.collection.TraversableLike.$anonfun$flatMap$1(TraversableLike.scala:244)
[error] 	at scala.collection.immutable.List.foreach(List.scala:392)
[error] 	at scala.collection.TraversableLike.flatMap(TraversableLike.scala:244)
[error] 	at scala.collection.TraversableLike.flatMap$(TraversableLike.scala:241)
[error] 	at scala.collection.immutable.List.flatMap(List.scala:355)
[error] 	at scala.tools.nsc.doc.html.HtmlPage.bodyToHtml(HtmlPage.scala:96)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.$anonfun$memberToCommentBodyHtml$21(Entity.scala:737)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.$anonfun$memberToCommentBodyHtml$20(Entity.scala:737)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToCommentBodyHtml(Entity.scala:699)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToCommentBodyHtml$(Entity.scala:481)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.memberToCommentBodyHtml(Entity.scala:1124)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToCommentHtml(Entity.scala:445)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToCommentHtml$(Entity.scala:436)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.memberToCommentHtml(Entity.scala:1124)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToHtml(Entity.scala:424)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.memberToHtml$(Entity.scala:411)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.memberToHtml(Entity.scala:1124)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.$anonfun$content$7(Entity.scala:318)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage.$init$(Entity.scala:318)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage$$anon$1.<init>(Entity.scala:1124)
[error] 	at scala.tools.nsc.doc.html.page.EntityPage$.apply(Entity.scala:1124)
[error] 	at scala.tools.nsc.doc.html.HtmlFactory.writeTemplates(HtmlFactory.scala:136)
[error] 	at scala.tools.nsc.doc.html.HtmlFactory.generate(HtmlFactory.scala:123)
[error] 	at scala.tools.nsc.doc.html.Doclet.generateImpl(Doclet.scala:30)
[error] 	at scala.tools.nsc.doc.doclet.Generator.generate(Generator.scala:35)
[error] 	at scala.tools.nsc.doc.DocFactory.generate$1(DocFactory.scala:135)
[error] 	at scala.tools.nsc.doc.DocFactory.document(DocFactory.scala:138)
[error] 	at xsbt.Runner.run(ScaladocInterface.scala:30)
[error] 	at xsbt.ScaladocInterface.run(ScaladocInterface.scala:15)
[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:237)
[error] 	at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:166)
[error] 	at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:147)
[error] 	at sbt.Doc$.$anonfun$scaladoc$1(Doc.scala:39)
[error] 	at sbt.Doc$.$anonfun$scaladoc$1$adapted(Doc.scala:39)
[error] 	at sbt.RawCompileLike$.$anonfun$prepare$1(RawCompileLike.scala:83)
[error] 	at sbt.RawCompileLike$.$anonfun$prepare$1$adapted(RawCompileLike.scala:76)
[error] 	at sbt.RawCompileLike$.$anonfun$cached$3(RawCompileLike.scala:67)
[error] 	at sbt.RawCompileLike$.$anonfun$cached$3$adapted(RawCompileLike.scala:65)
[error] 	at sbt.util.Tracked$.$anonfun$inputChanged$1(Tracked.scala:149)
[error] 	at sbt.RawCompileLike$.$anonfun$cached$1(RawCompileLike.scala:72)
[error] 	at sbt.RawCompileLike$.$anonfun$cached$1$adapted(RawCompileLike.scala:55)
[error] 	at sbt.Defaults$.$anonfun$docTaskSettings$3(Defaults.scala:1427)
[error] 	at scala.Function1.$anonfun$compose$1(Function1.scala:44)
[error] 	at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:40)
[error] 	at sbt.std.Transform$$anon$4.work(System.scala:67)
[error] 	at sbt.Execute.$anonfun$submit$2(Execute.scala:269)
[error] 	at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
[error] 	at sbt.Execute.work(Execute.scala:278)
[error] 	at sbt.Execute.$anonfun$submit$1(Execute.scala:269)
[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] (Compile / doc) scala.reflect.internal.FatalError:
[error]   bad constant pool tag 19 at byte 58
[error]      while compiling: /private/tmp/javamod/Hello.scala
[error]         during phase: globalPhase=terminal, enteringPhase=parser
[error]      library version: version 2.12.8
[error]     compiler version: version 2.12.8
[error]   reconstructed args: -d /private/tmp/javamod/target/scala-2.12/api -classpath dummy_3db15a5e -bootclasspath /Users/eed3si9n/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.8.jar
[error]
[error]   last tree to typer: Literal(Constant(()))
[error]        tree position: line 2 of /private/tmp/javamod/Hello.scala
[error]             tree tpe: Unit
[error]               symbol: null
[error]            call site: constructor Hello in class Hello in package <empty>
[error]
[error] == Source file context for tree position ==
[error]
[error]      1 /** @see [[toBytes(i:java\.time\.Instant* ]] */
[error]      2 class Hello
[error]      3

expectation

Just a warning, exactly how doc would run under JDK 8.

$ jenv shell 1.8
$ sbt
...
sbt:javamod> doc
[info] Main Scala API documentation to /private/tmp/javamod/target/scala-2.12/api...
model contains 3 documentable templates
[warn] /private/tmp/javamod/Hello.scala:3:1: Could not find any member to link for "toBytes(i:java\.time\.Instant*".
[warn] /** @see [[toBytes(i:java\.time\.Instant* ]]
[warn] ^
[warn] one warning found
[info] Main Scala API documentation successful.
[success] Total time: 3 s, completed Jul 31, 2019 1:19:15 PM

notes

The original report by @hmf posted here - https://gist.github.com/eed3si9n/5a09c7f6b523f99b105eee082c9aa7fb

Relevant code: https://github.com/scala/scala/blame/v2.12.8/src/compiler/scala/tools/nsc/symtab/classfile/ClassfileParser.scala#L197

Constant pool tag 19 also known as CONSTANT_Module is a constant type introduced in JDK 9.

@SethTisue
Copy link
Member

It isn't obvious to me from the error message what the cause might be, so in order to make progress on this, we'd need a self-contained reproducer.

@eed3si9n
Copy link
Member

I'm not familiar with GitLab, but could you show the exact pull request that changed the Scala version, and the accompanying failing logs on the CI environment?
I ran git blame from the web UI and it seems like projScalaVersion was updated to 2.12.8 on January 16, 2019 at https://gitlab.com/cese/adw/commit/ca7246382f1d12e64629f517de64202126f8a40b.

@hmf
Copy link
Author

hmf commented Jul 24, 2019

@eed3si9n Apologies for the late reply.

The date you have is correct. I have now realized I am wrong. After that date I still had the CI/CD running the doc task correctly. More concretely:

OK in 12 June 2019

https://gitlab.com/cese/adw/pipelines/65873233
https://gitlab.com/cese/adw/commit/62c831ac67858632fa187fd90152807fc77223c5

Failed 17 June 2019

https://gitlab.com/cese/adw/pipelines/66598918
https://gitlab.com/cese/adw/commit/23db4d4ad4930faec981805b89194d5a3dff909a

So the problem is not the change to 2.12.8. My apologies for this. However this allowed me to check the differences and (surprisingly for me) I have tracked the issue to the http://json4s.org/. More concretely:

Changing the sbt build file to use:

  • version 3.5.1 that I had works ok.
  • versions 3.6.6 and 3.6.6 causes the issue.

Will investigate further.

You can access CI here:

https://gitlab.com/cese/adw/pipelines

@hmf
Copy link
Author

hmf commented Jul 24, 2019

@SethTisue Apologies for the late reply.

I tried to change the offending code but this just made the error move to another part of the file. I have realized that a change in the http://json4s.org/ library is triggering this. I am going to create a new branch a strip code to see what happens. Hopefully I will have a minimal example.

Should I change the title of the issue or open a new one?

If you or anyone else have any suggestion for diagnosing this please tell me.

@SethTisue
Copy link
Member

We can leave the ticket open while you investigate.

You might check to see if the problem still exists in 2.13.0. (If it's already been fixed there, then perhaps the fix would be eligible for a backport to 2.12.x.) And also if the problem exists in the latest 2.12.x Scala nightly; a lot fixes have happened since 2.12.8.

My minimization methodology is usually some form of: delete some code; git commit so I can easily rewind; if the problem went away, back up and delete less/other code; if the problem didn't go away, delete more code, repeat.

And/or, if you can narrow it down to the particular json4s release that introduced the issue, or even the particular commit in the json4s repo, that might give us clues. So you might try bisecting on all the releases between 3.5.1 and 3.6.6.

@hmf
Copy link
Author

hmf commented Jul 27, 2019

@SethTisue Thanks for the suggestions.

My minimization methodology is usually some form of: delete some code; git commit so I can easily rewind; if the problem went away, back up and delete less/other code; if the problem didn't go away, delete more code, repeat.

I have done this and stripped the project to 2 Scala files and a single comment. The branch can be found here:

https://gitlab.com/cese/adw/tree/doctrouble

The offending line is here:

https://gitlab.com/cese/adw/blob/doctrouble/core/src/main/scala/pt/inescn/utils/NABUtils.scala#L7

Admittedly that comment is incorrect (cannot recall why I did that or when). However it only triggers the exception if a more recent Json4s library is include. Note that I am not importing or using any of the library classes or objects.

And/or, if you can narrow it down to the particular json4s release that introduced the issue, or even the particular commit in the json4s repo, that might give us clues. So you might try bisecting on all the releases between 3.5.1 and 3.6.6.

First and foremost only the json4s-extseems to trigger this behavior. Secondly all of the 2.5.x versions do not trigger the problem. See the following link to see the version I tested with:

https://gitlab.com/cese/adw/blob/doctrouble/build.sbt#L12

You might check to see if the problem still exists in 2.13.0. (If it's already been fixed there, then perhaps the fix would be eligible for a backport to 2.12.x.) And also if the problem exists in the latest 2.12.x Scala nightly; a lot fixes have happened since 2.12.8.

I tried the 2.12.8 and 2.13.0 branches. Same result.

A final note: in the first attempt to diagnose the problem I could cause the exception to move to other parts of the utils.Utils object. So it may be possible that some other combination of methods may also trigger the problem.

@tgodzik
Copy link

tgodzik commented Jul 31, 2019

We have same issue when trying presentation compiler on:

import akka.http.scaladsl.model.HttpMethods._
import akka.http.scaladsl.model.headers._
import akka.http.scaladsl.model.{HttpResponse, StatusCodes}
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.server.{Directive0, Route}

trait CorsSupport {
  private def addAccessControlHeaders: Directive0 = {
    respondWithHeaders(
      `Access-Control-Allow-Origin`.*,
      `Access-Control-Allow-Credentials`(true),
      `Access-Control-Allow-Headers`("Authorization", "Content-Type", "X-Requested-With")
    )
  }

  private def preflightRequestHandler: Route = options {
    complete(
      HttpResponse(StatusCodes.OK)
        .withHeaders(
          `Access-Control-Allow-Methods`(OPTIONS, POST, GET)
        )
    )
  }

  def corsHandler(r: Route) = addAccessControlHeaders {
    preflightRequestHandler ~ r
  }
}
Jul 31, 2019 4:47:56 PM scala.meta.internal.pc.CompilerAccess handleError
SEVERE: 
  bad constant pool tag 19 at byte 54
     while compiling: file:///home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/scala/CorsSupport.scala
        during phase: globalPhase=<no phase>, enteringPhase=parser
     library version: version 2.12.8
    compiler version: version 2.12.8
  reconstructed args: -Yrangepos -Ypresentation-any-thread -Ymacro-expand:discard -classpath /home/tgodzik/Documents/nfs-lagom/.bloop/sangria-endpoint/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/employee-activity-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/luminis-products-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/luminis-billings-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/invoice-details-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.8.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-scaladsl-api_2.12/jars/lagom-scaladsl-api_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-api_2.12/jars/lagom-api_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-parser-combinators_2.12/bundles/scala-parser-combinators_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-xml_2.12/bundles/scala-xml_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-actor_2.12/jars/akka-actor_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe/config/bundles/config-1.3.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-slf4j_2.12/jars/akka-slf4j_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-stream_2.12/jars/akka-stream_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-protobuf_2.12/jars/akka-protobuf_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/org.reactivestreams/reactive-streams/jars/reactive-streams-1.0.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe/ssl-config-core_2.12/bundles/ssl-config-core_2.12-0.3.7.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play_2.12/jars/play_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/build-link/jars/build-link-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-exceptions/jars/play-exceptions-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-streams_2.12/jars/play-streams_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-java8-compat_2.12/jars/scala-java8-compat_2.12-0.9.0.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/twirl-api_2.12/jars/twirl-api_2.12-1.4.0.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-core/bundles/jackson-core-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-annotations/bundles/jackson-annotations-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-databind/bundles/jackson-databind-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/bundles/jackson-datatype-jdk8-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/bundles/jackson-datatype-jsr310-2.9.8.jar:/home/tgodzik/.ivy2/cache/org.scala-lang/scala-reflect/jars/scala-reflect-2.12.8.jar:/home/tgodzik/.ivy2/cache/org.typelevel/macro-compat_2.12/jars/macro-compat_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/joda-time/joda-time/jars/joda-time-2.10.1.jar:/home/tgodzik/.ivy2/cache/com.google.guava/guava/bundles/guava-27.1-jre.jar:/home/tgodzik/.ivy2/cache/com.google.guava/failureaccess/bundles/failureaccess-1.0.1.jar:/home/tgodzik/.ivy2/cache/com.google.guava/listenablefuture/jars/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/home/tgodzik/.ivy2/cache/com.google.code.findbugs/jsr305/jars/jsr305-3.0.2.jar:/home/tgodzik/.ivy2/cache/org.checkerframework/checker-qual/jars/checker-qual-2.5.2.jar:/home/tgodzik/.ivy2/cache/com.google.errorprone/error_prone_annotations/jars/error_prone_annotations-2.2.0.jar:/home/tgodzik/.ivy2/cache/com.google.j2objc/j2objc-annotations/jars/j2objc-annotations-1.1.jar:/home/tgodzik/.ivy2/cache/org.codehaus.mojo/animal-sniffer-annotations/jars/animal-sniffer-annotations-1.17.jar:/home/tgodzik/.ivy2/cache/io.jsonwebtoken/jjwt/jars/jjwt-0.9.1.jar:/home/tgodzik/.ivy2/cache/javax.xml.bind/jaxb-api/jars/jaxb-api-2.3.1.jar:/home/tgodzik/.ivy2/cache/javax.activation/javax.activation-api/jars/javax.activation-api-1.2.0.jar:/home/tgodzik/.ivy2/cache/javax.transaction/jta/jars/jta-1.1.jar:/home/tgodzik/.ivy2/cache/javax.inject/javax.inject/jars/javax.inject-1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-json-joda_2.12/jars/play-json-joda_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-json_2.12/jars/play-json_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-functional_2.12/jars/play-functional_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-scaladsl-client_2.12/jars/lagom-scaladsl-client_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-client_2.12/jars/lagom-client_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-spi_2.12/jars/lagom-spi_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/org.slf4j/slf4j-api/jars/slf4j-api-1.7.25.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws_2.12/jars/play-ws_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone_2.12/jars/play-ws-standalone_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone-xml_2.12/jars/play-ws-standalone-xml_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone-json_2.12/jars/play-ws-standalone-json_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ahc-ws_2.12/jars/play-ahc-ws_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ahc-ws-standalone_2.12/jars/play-ahc-ws-standalone_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/cachecontrol_2.12/jars/cachecontrol_2.12-1.1.5.jar:/home/tgodzik/.ivy2/cache/org.joda/joda-convert/jars/joda-convert-1.9.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/shaded-asynchttpclient/jars/shaded-asynchttpclient-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/shaded-oauth/jars/shaded-oauth-2.0.3.jar:/home/tgodzik/.ivy2/cache/javax.cache/cache-api/jars/cache-api-1.0.0.jar:/home/tgodzik/.ivy2/cache/com.typesafe.netty/netty-reactive-streams/jars/netty-reactive-streams-2.0.3.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-handler/jars/netty-handler-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-common/jars/netty-common-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-buffer/jars/netty-buffer-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-transport/jars/netty-transport-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-resolver/jars/netty-resolver-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-codec/jars/netty-codec-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-codec-http/jars/netty-codec-http-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria_2.12/jars/sangria_2.12-1.4.2.jar:/home/tgodzik/.ivy2/cache/org.parboiled/parboiled_2.12/jars/parboiled_2.12-2.1.4.jar:/home/tgodzik/.ivy2/cache/com.chuusai/shapeless_2.12/bundles/shapeless_2.12-2.3.2.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/macro-visit_2.12/jars/macro-visit_2.12-0.1.1.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-marshalling-api_2.12/jars/sangria-marshalling-api_2.12-1.0.3.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-streaming-api_2.12/jars/sangria-streaming-api_2.12-1.0.0.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-slowlog_2.12/jars/sangria-slowlog_2.12-0.1.8.jar:/home/tgodzik/.ivy2/cache/io.dropwizard.metrics/metrics-core/bundles/metrics-core-4.0.3.jar:/home/tgodzik/.ivy2/cache/io.opentracing.contrib/opentracing-scala-concurrent_2.12/jars/opentracing-scala-concurrent_2.12-0.0.4.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-util/jars/opentracing-util-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-api/jars/opentracing-api-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-noop/jars/opentracing-noop-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-mock/jars/opentracing-mock-0.31.0.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-circe_2.12/jars/sangria-circe_2.12-1.2.1.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-core_2.12/jars/circe-core_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-numbers_2.12/jars/circe-numbers_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-core_2.12/jars/cats-core_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-macros_2.12/jars/cats-macros_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/org.typelevel/machinist_2.12/jars/machinist_2.12-0.6.2.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-kernel_2.12/jars/cats-kernel_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-http_2.12/jars/akka-http_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-http-core_2.12/jars/akka-http-core_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-parsing_2.12/jars/akka-parsing_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/de.heikoseeberger/akka-http-circe_2.12/jars/akka-http-circe_2.12-1.21.0.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-jawn_2.12/jars/circe-jawn_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/org.spire-math/jawn-parser_2.12/jars/jawn-parser_2.12-0.11.1.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-parser_2.12/jars/circe-parser_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-optics_2.12/jars/circe-optics_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/com.github.julien-truffaut/monocle-core_2.12/jars/monocle-core_2.12-1.4.0.jar:/home/tgodzik/.ivy2/cache/org.scalaz/scalaz-core_2.12/bundles/scalaz-core_2.12-7.2.8.jar:/home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/resources -Ycache-plugin-class-loader:last-modified -Xplugin-require:semanticdb

  last tree to typer: TypeTree
       tree position: line 25 of file:///home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/scala/CorsSupport.scala
            tree tpe: <error>
              symbol: <none>
   symbol definition: <none> (a NoSymbol)
      symbol package: <none>
       symbol owners: 
           call site: <none> in <none>

== Source file context for tree position ==

    22     )
    23   }
    24 
    25   def corsHandler(r: Route) = addAccessControlHeaders {
    26 p_CURSOR_
    27     preflightRequestHandler ~ r
    28   }
scala.reflect.internal.FatalError: 
  bad constant pool tag 19 at byte 54
     while compiling: file:///home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/scala/CorsSupport.scala
        during phase: globalPhase=<no phase>, enteringPhase=parser
     library version: version 2.12.8
    compiler version: version 2.12.8
  reconstructed args: -Yrangepos -Ypresentation-any-thread -Ymacro-expand:discard -classpath /home/tgodzik/Documents/nfs-lagom/.bloop/sangria-endpoint/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/employee-activity-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/luminis-products-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/luminis-billings-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/Documents/nfs-lagom/.bloop/invoice-details-api/scala-2.12/bloop-bsp-clients-classes/classes-Metals-zRADfhrVQN6yCcXGR4UM-w==:/home/tgodzik/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.8.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-scaladsl-api_2.12/jars/lagom-scaladsl-api_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-api_2.12/jars/lagom-api_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-parser-combinators_2.12/bundles/scala-parser-combinators_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-xml_2.12/bundles/scala-xml_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-actor_2.12/jars/akka-actor_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe/config/bundles/config-1.3.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-slf4j_2.12/jars/akka-slf4j_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-stream_2.12/jars/akka-stream_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-protobuf_2.12/jars/akka-protobuf_2.12-2.5.22.jar:/home/tgodzik/.ivy2/cache/org.reactivestreams/reactive-streams/jars/reactive-streams-1.0.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe/ssl-config-core_2.12/bundles/ssl-config-core_2.12-0.3.7.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play_2.12/jars/play_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/build-link/jars/build-link-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-exceptions/jars/play-exceptions-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-streams_2.12/jars/play-streams_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/org.scala-lang.modules/scala-java8-compat_2.12/jars/scala-java8-compat_2.12-0.9.0.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/twirl-api_2.12/jars/twirl-api_2.12-1.4.0.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-core/bundles/jackson-core-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-annotations/bundles/jackson-annotations-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.core/jackson-databind/bundles/jackson-databind-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.datatype/jackson-datatype-jdk8/bundles/jackson-datatype-jdk8-2.9.8.jar:/home/tgodzik/.ivy2/cache/com.fasterxml.jackson.datatype/jackson-datatype-jsr310/bundles/jackson-datatype-jsr310-2.9.8.jar:/home/tgodzik/.ivy2/cache/org.scala-lang/scala-reflect/jars/scala-reflect-2.12.8.jar:/home/tgodzik/.ivy2/cache/org.typelevel/macro-compat_2.12/jars/macro-compat_2.12-1.1.1.jar:/home/tgodzik/.ivy2/cache/joda-time/joda-time/jars/joda-time-2.10.1.jar:/home/tgodzik/.ivy2/cache/com.google.guava/guava/bundles/guava-27.1-jre.jar:/home/tgodzik/.ivy2/cache/com.google.guava/failureaccess/bundles/failureaccess-1.0.1.jar:/home/tgodzik/.ivy2/cache/com.google.guava/listenablefuture/jars/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar:/home/tgodzik/.ivy2/cache/com.google.code.findbugs/jsr305/jars/jsr305-3.0.2.jar:/home/tgodzik/.ivy2/cache/org.checkerframework/checker-qual/jars/checker-qual-2.5.2.jar:/home/tgodzik/.ivy2/cache/com.google.errorprone/error_prone_annotations/jars/error_prone_annotations-2.2.0.jar:/home/tgodzik/.ivy2/cache/com.google.j2objc/j2objc-annotations/jars/j2objc-annotations-1.1.jar:/home/tgodzik/.ivy2/cache/org.codehaus.mojo/animal-sniffer-annotations/jars/animal-sniffer-annotations-1.17.jar:/home/tgodzik/.ivy2/cache/io.jsonwebtoken/jjwt/jars/jjwt-0.9.1.jar:/home/tgodzik/.ivy2/cache/javax.xml.bind/jaxb-api/jars/jaxb-api-2.3.1.jar:/home/tgodzik/.ivy2/cache/javax.activation/javax.activation-api/jars/javax.activation-api-1.2.0.jar:/home/tgodzik/.ivy2/cache/javax.transaction/jta/jars/jta-1.1.jar:/home/tgodzik/.ivy2/cache/javax.inject/javax.inject/jars/javax.inject-1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-json-joda_2.12/jars/play-json-joda_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-json_2.12/jars/play-json_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-functional_2.12/jars/play-functional_2.12-2.7.4.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-scaladsl-client_2.12/jars/lagom-scaladsl-client_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-client_2.12/jars/lagom-client_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/com.lightbend.lagom/lagom-spi_2.12/jars/lagom-spi_2.12-1.5.1.jar:/home/tgodzik/.ivy2/cache/org.slf4j/slf4j-api/jars/slf4j-api-1.7.25.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws_2.12/jars/play-ws_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone_2.12/jars/play-ws-standalone_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone-xml_2.12/jars/play-ws-standalone-xml_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ws-standalone-json_2.12/jars/play-ws-standalone-json_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ahc-ws_2.12/jars/play-ahc-ws_2.12-2.7.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/play-ahc-ws-standalone_2.12/jars/play-ahc-ws-standalone_2.12-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/cachecontrol_2.12/jars/cachecontrol_2.12-1.1.5.jar:/home/tgodzik/.ivy2/cache/org.joda/joda-convert/jars/joda-convert-1.9.2.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/shaded-asynchttpclient/jars/shaded-asynchttpclient-2.0.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.play/shaded-oauth/jars/shaded-oauth-2.0.3.jar:/home/tgodzik/.ivy2/cache/javax.cache/cache-api/jars/cache-api-1.0.0.jar:/home/tgodzik/.ivy2/cache/com.typesafe.netty/netty-reactive-streams/jars/netty-reactive-streams-2.0.3.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-handler/jars/netty-handler-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-common/jars/netty-common-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-buffer/jars/netty-buffer-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-transport/jars/netty-transport-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-resolver/jars/netty-resolver-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-codec/jars/netty-codec-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/io.netty/netty-codec-http/jars/netty-codec-http-4.1.34.Final.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria_2.12/jars/sangria_2.12-1.4.2.jar:/home/tgodzik/.ivy2/cache/org.parboiled/parboiled_2.12/jars/parboiled_2.12-2.1.4.jar:/home/tgodzik/.ivy2/cache/com.chuusai/shapeless_2.12/bundles/shapeless_2.12-2.3.2.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/macro-visit_2.12/jars/macro-visit_2.12-0.1.1.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-marshalling-api_2.12/jars/sangria-marshalling-api_2.12-1.0.3.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-streaming-api_2.12/jars/sangria-streaming-api_2.12-1.0.0.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-slowlog_2.12/jars/sangria-slowlog_2.12-0.1.8.jar:/home/tgodzik/.ivy2/cache/io.dropwizard.metrics/metrics-core/bundles/metrics-core-4.0.3.jar:/home/tgodzik/.ivy2/cache/io.opentracing.contrib/opentracing-scala-concurrent_2.12/jars/opentracing-scala-concurrent_2.12-0.0.4.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-util/jars/opentracing-util-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-api/jars/opentracing-api-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-noop/jars/opentracing-noop-0.31.0.jar:/home/tgodzik/.ivy2/cache/io.opentracing/opentracing-mock/jars/opentracing-mock-0.31.0.jar:/home/tgodzik/.ivy2/cache/org.sangria-graphql/sangria-circe_2.12/jars/sangria-circe_2.12-1.2.1.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-core_2.12/jars/circe-core_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-numbers_2.12/jars/circe-numbers_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-core_2.12/jars/cats-core_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-macros_2.12/jars/cats-macros_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/org.typelevel/machinist_2.12/jars/machinist_2.12-0.6.2.jar:/home/tgodzik/.ivy2/cache/org.typelevel/cats-kernel_2.12/jars/cats-kernel_2.12-1.0.1.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-http_2.12/jars/akka-http_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-http-core_2.12/jars/akka-http-core_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/com.typesafe.akka/akka-parsing_2.12/jars/akka-parsing_2.12-10.1.3.jar:/home/tgodzik/.ivy2/cache/de.heikoseeberger/akka-http-circe_2.12/jars/akka-http-circe_2.12-1.21.0.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-jawn_2.12/jars/circe-jawn_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/org.spire-math/jawn-parser_2.12/jars/jawn-parser_2.12-0.11.1.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-parser_2.12/jars/circe-parser_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/io.circe/circe-optics_2.12/jars/circe-optics_2.12-0.9.3.jar:/home/tgodzik/.ivy2/cache/com.github.julien-truffaut/monocle-core_2.12/jars/monocle-core_2.12-1.4.0.jar:/home/tgodzik/.ivy2/cache/org.scalaz/scalaz-core_2.12/bundles/scalaz-core_2.12-7.2.8.jar:/home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/resources -Ycache-plugin-class-loader:last-modified -Xplugin-require:semanticdb

  last tree to typer: TypeTree
       tree position: line 25 of file:///home/tgodzik/Documents/nfs-lagom/sangria-endpoint/src/main/scala/CorsSupport.scala
            tree tpe: <error>
              symbol: <none>
   symbol definition: <none> (a NoSymbol)
      symbol package: <none>
       symbol owners: 
           call site: <none> in <none>

== Source file context for tree position ==

    22     )
    23   }
    24 
    25   def corsHandler(r: Route) = addAccessControlHeaders {
    26 p_CURSOR_
    27     preflightRequestHandler ~ r
    28   }
	at scala.reflect.internal.Reporting.abort(Reporting.scala:68)
	at scala.reflect.internal.Reporting.abort$(Reporting.scala:64)
	at scala.reflect.internal.SymbolTable.abort(SymbolTable.scala:27)
	at scala.tools.nsc.symtab.classfile.ClassfileParser$ConstantPool.errorBadTag(ClassfileParser.scala:372)
	at scala.tools.nsc.symtab.classfile.ClassfileParser$ConstantPool.<init>(ClassfileParser.scala:197)
	at scala.tools.nsc.symtab.SymbolLoaders$ClassfileLoader$classfileParser$.newConstantPool(SymbolLoaders.scala:310)
	at scala.tools.nsc.symtab.classfile.ClassfileParser.$anonfun$parse$1(ClassfileParser.scala:161)
	at scala.tools.nsc.symtab.classfile.ClassfileParser.parse(ClassfileParser.scala:133)
	at scala.tools.nsc.symtab.SymbolLoaders$ClassfileLoader.doComplete(SymbolLoaders.scala:332)
	at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:231)
	at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1542)
	at scala.reflect.internal.Symbols$Symbol.tpeHK(Symbols.scala:1477)
	at scala.reflect.internal.Types$Type.computeMemberType(Types.scala:733)
	at scala.reflect.internal.Types$Type.memberType(Types.scala:730)
	at scala.tools.nsc.interactive.Global$Members.$anonfun$add$1(Global.scala:999)
	at scala.tools.nsc.interactive.Global$OnTypeError.onTypeError(Global.scala:1358)
	at scala.tools.nsc.interactive.Global$Members.add(Global.scala:999)
	at scala.tools.nsc.interactive.Global.addScopeMember$1(Global.scala:1028)
	at scala.tools.nsc.interactive.Global.$anonfun$scopeMembers$2(Global.scala:1045)
	at scala.tools.nsc.interactive.Global.$anonfun$scopeMembers$2$adapted(Global.scala:1044)
	at scala.reflect.internal.Scopes$Scope.foreach(Scopes.scala:415)
	at scala.tools.nsc.interactive.Global.scopeMembers(Global.scala:1044)
	at scala.tools.nsc.interactive.Global.completionsAt(Global.scala:1255)
	at scala.meta.internal.pc.CompletionProvider.safeCompletionsAt(CompletionProvider.scala:356)
	at scala.meta.internal.pc.CompletionProvider.completions(CompletionProvider.scala:47)

@eed3si9n
Copy link
Member

@hmf Could you update the title, reproductions steps, and the problem if needed please?

@eed3si9n
Copy link
Member

https://gitlab.com/cese/adw/-/jobs/232862132 shows

$ java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-2~deb9u1-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)

but it is Debian package of OpenJDK so I'd take that with a grain of salt.

@eed3si9n eed3si9n changed the title Scaladoc: upgrade 2.12.7 -> 2.12.8 causes scala.reflect.internal.Reporting.abort excpetion Scaladoc: bad constant pool tag 19 Jul 31, 2019
@eed3si9n eed3si9n added the jdk11 label Jul 31, 2019
@eed3si9n eed3si9n self-assigned this Jul 31, 2019
@eed3si9n
Copy link
Member

I've updated the description of this issue with steps, problem, and expectations.

eed3si9n added a commit to eed3si9n/scala that referenced this issue Jul 31, 2019
Fixes scala/bug#11635

Occasionally the compiler tries to parse the class files from the classpath. This happens, for example, during scaladoc comment referencing a class name `java.time.Instant`. This would cause error in JDK11 because it includes an unknown constant pool tag 9 (CONSTANT_Module). This updates the parser to skip it over.
@SethTisue SethTisue added this to the 2.12.9 milestone Aug 1, 2019
@SethTisue
Copy link
Member

SethTisue commented Aug 1, 2019

@hmf @tgodzik can you verify that your issue is fixed in the Scala nightly 2.12.9-bin-87d43d0? (see https://stackoverflow.com/questions/40622878/how-do-i-tell-sbt-to-use-a-nightly-build-of-scala-2-12-or-2-13 for info on using nightly builds of Scala)

@hmf
Copy link
Author

hmf commented Aug 1, 2019

@eed3si9n Apologies for not responding earlier. Only saw your request now.
As for the JDK Version, please note that I also test this on my machine with:

java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

Thanks for the update.

@hmf
Copy link
Author

hmf commented Aug 1, 2019

@SethTisue I have checked that the very simple project I set-up is working. However I cannot check on the full project because of unresolved dependencies. For example:

 org.scala-lang#scalap;2.12.9-bin-87d43d0: not found

@tgodzik
Copy link

tgodzik commented Aug 1, 2019

Confirmed on my end, also everything seems to work with Metals.

@SethTisue
Copy link
Member

@tgodzik thanks

@hmf thanks. I think that's good enough for us to go ahead with the 2.12.9 release, at which point the scalap dependency will be available. (and if at that point you find the problem isn't completely fixed, oh well, it can wait for 2.12.10)

@SethTisue
Copy link
Member

Note that Scala 2.11 is affected as well.

Shadowfiend added a commit to hacklanta/lift-formality that referenced this issue Sep 22, 2019
Chiefly, this fixes an issue where the doc task would fail with Lift
3.3.0 and Scala <2.12.9, because Lift 3.3.0 was compiled with JDK 9 and
the doc compiler pre-2.12.9 had issues with certain constants from JDK 9
(see scala/bug#11635 and scala/scala#8289).
@nevillelyh
Copy link

I'm hitting this with 2.11.12, caused by module-info change in jackson 2.10.0.
spotify/scio#2308
https://github.com/FasterXML/jackson/wiki/Jackson-Release-2.10#changes-compatibility

nevillelyh pushed a commit to nevillelyh/scala that referenced this issue Dec 12, 2019
Fixes scala/bug#11635

Occasionally the compiler tries to parse the class files from the classpath. This happens, for example, during scaladoc comment referencing a class name `java.time.Instant`. This would cause error in JDK11 because it includes an unknown constant pool tag 9 (CONSTANT_Module). This updates the parser to skip it over.
colin-lamed added a commit to hmrc/work-item-repo that referenced this issue Aug 11, 2020
SethTisue added a commit to SethTisue/dotty that referenced this issue Jan 26, 2024
forward-port of scala/scala#10675 and scala/scala#8595
references scala/bug#12396 and scala/bug#11635
fixes scala#19527 ("bad constant pool tag 17")
also fixes unreported potential "bad constant pool tag 19" and
"bad constant pool tag 20" errors
SethTisue added a commit to scala/scala3 that referenced this issue Jan 30, 2024
forward-port of scala/scala#10675 and scala/scala#8595
references scala/bug#12396 and scala/bug#11635
fixes #19527 ("bad constant pool tag 17")
also fixes unreported potential "bad constant pool tag 19" and "bad constant pool tag 20" errors
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants