Skip to content

yyCheck:all. don't like using objects without Companions from macroses #11331

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
rssh opened this issue Feb 6, 2021 · 2 comments
Closed

yyCheck:all. don't like using objects without Companions from macroses #11331

rssh opened this issue Feb 6, 2021 · 2 comments

Comments

@rssh
Copy link
Contributor

rssh commented Feb 6, 2021

Compiler version

Latest Dotty nightly build version: 3.0.0-M4-bin-20210205-f42279d-NIGHTLY

Minimized code

file X.scala:

package x

import scala.quoted._

class A


object X:

 inline def process[T](inline f:T) = ${
   processImpl[T]('f)
 }

 def processImpl[T:Type](t:Expr[T])(using Quotes):Expr[T] =
   import quotes.reflect._
   t

file Main.scala:

package x

object Main:

 def main(args:Array[String]):Unit =
   X.process{
    val a = new A
    a
   }

-Ycheck: all is essential for reproducing

Output (click arrow to expand)

[info] checking /Users/rssh/tests/dotty/crash-yycheck-all-companion/src/main/scala/x/Main.scala after phase staging
dotty.tools.dotc.core.Denotations$StaleSymbol: stale symbol; module class A$#3410 in module class x, defined in Period(1..63, run = 2), is referred to in run Period(17..17, run = 3) while compiling /Users/rssh/tests/dotty/crash-yycheck-all-companion/src/main/scala/x/Main.scala, /Users/rssh/tests/dotty/crash-yycheck-all-companion/src/main/scala/x/X.scala
[error] ## Exception when compiling 2 sources to /Users/rssh/tests/dotty/crash-yycheck-all-companion/target/scala-3.0.0-M4/classes
[error] dotty.tools.dotc.core.Denotations$StaleSymbol: stale symbol; module class A$#3410 in module class x, defined in Period(1..63, run = 2), is referred to in run Period(17..17, run = 3)
[error] dotty.tools.dotc.core.Denotations$SingleDenotation.staleSymbolError(Denotations.scala:930)
[error] dotty.tools.dotc.core.Denotations$SingleDenotation.bringForward(Denotations.scala:727)
[error] dotty.tools.dotc.core.Denotations$SingleDenotation.toNewRun$1(Denotations.scala:778)
[error] dotty.tools.dotc.core.Denotations$SingleDenotation.current(Denotations.scala:852)
[error] dotty.tools.dotc.core.Symbols$Symbol.recomputeDenot(Symbols.scala:122)
[error] dotty.tools.dotc.core.Symbols$Symbol.computeDenot(Symbols.scala:116)
[error] dotty.tools.dotc.core.Symbols$Symbol.denot(Symbols.scala:109)
[error] dotty.tools.dotc.core.Symbols$.toDenot(Symbols.scala:494)
[error] dotty.tools.dotc.core.SymDenotations$ClassDenotation.registeredCompanion(SymDenotations.scala:2207)
[error] dotty.tools.dotc.core.SymDenotations$SymDenotation.companionModule(SymDenotations.scala:1174)
[error] dotty.tools.dotc.core.SymDenotations$SymDenotation.linkedClass(SymDenotations.scala:1228)
[error] dotty.tools.dotc.core.SymDenotations$SymDenotation.isLinkedWith(SymDenotations.scala:1220)
[error] dotty.tools.dotc.core.tasty.TreePickler.isLocallyDefined(TreePickler.scala:118)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleNewType(TreePickler.scala:227)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleType(TreePickler.scala:171)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:610)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTpt(TreePickler.scala:327)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$6(TreePickler.scala:468)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:468)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$9(TreePickler.scala:479)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:479)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$19(TreePickler.scala:523)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:529)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$6(TreePickler.scala:468)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:468)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$19(TreePickler.scala:523)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:529)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$40$$anonfun$1(TreePickler.scala:479)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:15)
[error] scala.runtime.function.JProcedure1.apply(JProcedure1.java:10)
[error] scala.collection.immutable.List.foreach(List.scala:333)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree$$anonfun$9(TreePickler.scala:479)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:479)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTreeUnlessEmpty(TreePickler.scala:330)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef$$anonfun$1(TreePickler.scala:345)
[error] dotty.tools.dotc.core.tasty.TreePickler.withLength(TreePickler.scala:69)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleDef(TreePickler.scala:347)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleTree(TreePickler.scala:566)
[error] dotty.tools.dotc.core.tasty.TreePickler.pickleStats$$anonfun$2(TreePickler.scala:371)
@rssh
Copy link
Contributor Author

rssh commented Feb 6, 2021

rssh added a commit to rssh/dotty that referenced this issue Feb 7, 2021
rssh added a commit to rssh/dotty that referenced this issue Feb 7, 2021
@rssh
Copy link
Contributor Author

rssh commented Feb 7, 2021

fix submitted in #11335

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