Skip to content

VerifyError constructing path dependent class #6677

@scabug

Description

@scabug
class Test {
  val cm: reflect.runtime.universe.Mirror = reflect.runtime.currentMirror
  def error {
    new cm.universe.Traverser // java.lang.VerifyError: (class: Test, method: error signature: ()V) Incompatible object argument for function call
  }

  def okay1 {
    val cm: reflect.runtime.universe.Mirror = reflect.runtime.currentMirror
    new cm.universe.Traverser
  }

  def okay2 {
    val cm: reflect.runtime.universe.Mirror = reflect.runtime.currentMirror
    val u: reflect.runtime.universe.type = cm.universe
    new u.Traverser
  }
}

object Test {
  def main(args: Array[String]) {
    new Test().error
    new Test().okay1
    new Test().okay2
  }
}

I'm yet to isolate this from the reflection API, so I don't know if it's a regression.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions