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

value class. class tag: crash. class manifest: crash. #5731

Closed
scabug opened this issue May 2, 2012 · 3 comments
Closed

value class. class tag: crash. class manifest: crash. #5731

scabug opened this issue May 2, 2012 · 3 comments

Comments

@scabug
Copy link

scabug commented May 2, 2012

Note two distinct crash points. Regression from 2.9.

object Test {
  // This one crashes in superaccessors
  def f1 = classManifest[Predef.ArrowAssoc[_]]
  // This one crashes in jvm
  def f2 = classTag[Predef.ArrowAssoc[_]]

  // f1:
  //
  // error: Unknown type: Predef$ArrowAssoc$unboxed, Predef$ArrowAssoc$unboxed [class scala.reflect.internal.Types$UniqueErasedValueType, class scala.reflect.internal.Types$UniqueErasedValueType] TypeRef? false

  // f2:
  //
  // TRANSFORM: null
  // TREE: reflect.this.ClassManifest.<error>[ArrowAssoc[_]](classOf[scala.Predef$$ArrowAssoc].asInstanceOf[Class[ArrowAssoc[_]]], reflect.this.NoManifest)
  // TRANSFORM: null
  // TREE: scala.this.Predef.classManifest[ArrowAssoc[_]](reflect.this.ClassManifest.<error>[ArrowAssoc[_]](classOf[scala.Predef$$ArrowAssoc].asInstanceOf[Class[ArrowAssoc[_]]], reflect.this.NoManifest))
  // TRANSFORM: a.scala
}
@scabug
Copy link
Author

scabug commented May 2, 2012

Imported From: https://issues.scala-lang.org/browse/SI-5731?orig=1
Reporter: @paulp

@scabug
Copy link
Author

scabug commented May 2, 2012

@paulp said:
Also, it doesn't crash with a non-wildcard in the type parameter position, and typeTag does and doesn't crash the same way.


scala> classTag[scala.Predef.ArrowAssoc[String]]
res0: ClassTag[ArrowAssoc[String]] = ClassTag[class scala.Predef$ArrowAssoc]

scala> typeTag[scala.Predef.ArrowAssoc[_]]
ReplGlobal.abort: Unknown type: Predef$ArrowAssoc$unboxed, Predef$ArrowAssoc$unboxed [class scala.reflect.internal.Types$UniqueErasedValueType, class scala.reflect.internal.Types$UniqueErasedValueType] TypeRef? false
error: Unknown type: Predef$ArrowAssoc$unboxed, Predef$ArrowAssoc$unboxed [class scala.reflect.internal.Types$UniqueErasedValueType, class scala.reflect.internal.Types$UniqueErasedValueType] TypeRef? false

@scabug
Copy link
Author

scabug commented Jul 18, 2012

@adriaanm said:
scala/scala#933

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

2 participants