scalacenter / scala

The Scala programming language

Home Page:http://www.scala-lang.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

reading annotation starts from wrong address

bishabosha opened this issue · comments

// src-3/Delayed.scala

sealed trait Delayed[+L, +R]

object Delayed {
  final class Empty extends Delayed[Nothing, Nothing]
}
// src-2/TestDelayed.scala

object TestDelayed {
  def test: Delayed[Nothing, Nothing] = ??? // error
}
Trace
error: scala.MatchError: 129 (of class java.lang.Integer)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readLengthType$1(TreeUnpickler.scala:304)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readType(TreeUnpickler.scala:363)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readPathTerm$1(TreeUnpickler.scala:875)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readLengthTerm$1(TreeUnpickler.scala:983)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readTerm(TreeUnpickler.scala:989)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.$anonfun$readTypedAnnot$4(TreeUnpickler.scala:614)
	at scala.tools.nsc.tasty.TreeUnpickler.$anonfun$readWith$2(TreeUnpickler.scala:1042)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.withSafePhaseNoLater(ContextOps.scala:346)
	at scala.tools.nsc.tasty.TreeUnpickler.readWith(TreeUnpickler.scala:1034)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.$anonfun$readLaterWithOwner$2(TreeUnpickler.scala:1021)
	at scala.tools.nsc.tasty.bridge.AnnotationOps.$anonfun$mkAnnotationDeferred$1(AnnotationOps.scala:29)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.forcedInfo$lzycompute(AnnotationInfos.scala:158)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.forcedInfo(AnnotationInfos.scala:158)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.atp(AnnotationInfos.scala:160)
	at scala.reflect.internal.AnnotationInfos$AnnotationInfo.symbol(AnnotationInfos.scala:232)
	at scala.reflect.internal.AnnotationInfos$AnnotationInfo.matches(AnnotationInfos.scala:253)
	at scala.reflect.internal.AnnotationInfos$Annotatable.dropOtherAnnotations(AnnotationInfos.scala:66)
	at scala.reflect.internal.AnnotationInfos$Annotatable.getAnnotation(AnnotationInfos.scala:55)
	at scala.reflect.internal.AnnotationInfos$Annotatable.getAnnotation$(AnnotationInfos.scala:53)
	at scala.reflect.internal.Symbols$Symbol.getAnnotation(Symbols.scala:221)
	at scala.reflect.internal.Types$TypeRef.isShowAsInfixType(Types.scala:2387)
	at scala.reflect.internal.Types$TypeRef.customToString(Types.scala:2695)
	at scala.reflect.internal.Types$TypeRef.safeToString(Types.scala:2702)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString(TypeToStrings.scala:55)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString$(TypeToStrings.scala:34)
	at scala.reflect.internal.SymbolTable.typeToString(SymbolTable.scala:28)
	at scala.reflect.internal.Types$Type.toString(Types.scala:943)
	at java.lang.String.valueOf(String.java:2994)
	at java.lang.StringBuilder.append(StringBuilder.java:131)
	at scala.collection.IterableOnceOps.addString(IterableOnce.scala:1194)
	at scala.collection.IterableOnceOps.addString$(IterableOnce.scala:1186)
	at scala.collection.AbstractIterable.addString(Iterable.scala:920)
	at scala.collection.IterableOnceOps.mkString(IterableOnce.scala:1136)
	at scala.collection.IterableOnceOps.mkString$(IterableOnce.scala:1134)
	at scala.collection.AbstractIterable.mkString(Iterable.scala:920)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.$anonfun$readTemplate$10(TreeUnpickler.scala:824)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.log(ContextOps.scala:91)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readTemplate(TreeUnpickler.scala:823)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readNewMember(TreeUnpickler.scala:746)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readIndexedMember(TreeUnpickler.scala:677)
	at scala.tools.nsc.tasty.TreeUnpickler$Completer.$anonfun$complete$1(TreeUnpickler.scala:93)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.$anonfun$withPhaseNoLater$1(ContextOps.scala:335)
	at scala.reflect.internal.SymbolTable.enteringPhaseNotLaterThan(SymbolTable.scala:315)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.withPhaseNoLater(ContextOps.scala:335)
	at scala.tools.nsc.tasty.TreeUnpickler$Completer.complete(TreeUnpickler.scala:92)
	at scala.tools.nsc.tasty.bridge.TypeOps$TastyLazyType.load(TypeOps.scala:204)
	at scala.reflect.internal.Symbols$Symbol.$anonfun$typeParams$1(Symbols.scala:1792)
	at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)
	at scala.reflect.internal.SymbolTable.enteringPhase(SymbolTable.scala:286)
	at scala.reflect.internal.Symbols$Symbol.completeTypeParams$1(Symbols.scala:1792)
	at scala.reflect.internal.Symbols$Symbol.typeParams(Symbols.scala:1799)
	at scala.reflect.internal.Types$NoArgsTypeRef.typeParams(Types.scala:2161)
	at scala.reflect.internal.Types$NoArgsTypeRef.isHigherKinded(Types.scala:2160)
	at scala.reflect.internal.Definitions$DefinitionsClass.isFunctionTypeDirect(Definitions.scala:728)
	at scala.reflect.internal.Types$TypeRef.customToString(Types.scala:2677)
	at scala.reflect.internal.Types$TypeRef.safeToString(Types.scala:2702)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString(TypeToStrings.scala:55)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString$(TypeToStrings.scala:34)
	at scala.reflect.internal.SymbolTable.typeToString(SymbolTable.scala:28)
	at scala.reflect.internal.Types$Type.toString(Types.scala:943)
	at scala.reflect.internal.Printers$TreePrinter.printTree(Printers.scala:487)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1(Printers.scala:40)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1$adapted(Printers.scala:24)
	at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
	at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:920)
	at scala.tools.nsc.ast.Printers$TreePrinter.print(Printers.scala:24)
	at scala.reflect.internal.Printers$TreePrinter.$anonfun$printRow$1(Printers.scala:114)
	at scala.reflect.internal.Printers$TreePrinter.$anonfun$printRow$1$adapted(Printers.scala:114)
	at scala.reflect.internal.Printers$TreePrinter.printSeq(Printers.scala:104)
	at scala.reflect.internal.Printers$TreePrinter.printRow(Printers.scala:114)
	at scala.reflect.internal.Printers$TreePrinter.printTree(Printers.scala:447)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1(Printers.scala:40)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1$adapted(Printers.scala:24)
	at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
	at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:920)
	at scala.tools.nsc.ast.Printers$TreePrinter.print(Printers.scala:24)
	at scala.reflect.internal.Printers$TreePrinter.printTree(Printers.scala:450)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1(Printers.scala:40)
	at scala.tools.nsc.ast.Printers$TreePrinter.$anonfun$print$1$adapted(Printers.scala:24)
	at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:553)
	at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:551)
	at scala.collection.AbstractIterable.foreach(Iterable.scala:920)
	at scala.tools.nsc.ast.Printers$TreePrinter.print(Printers.scala:24)
	at scala.reflect.api.Printers.render(Printers.scala:197)
	at scala.reflect.api.Printers.render$(Printers.scala:187)
	at scala.reflect.api.Universe.render(Universe.scala:73)
	at scala.reflect.api.Printers.show(Printers.scala:213)
	at scala.reflect.api.Printers.show$(Printers.scala:212)
	at scala.reflect.api.Universe.show(Universe.scala:73)
	at scala.reflect.api.Printers.treeToString(Printers.scala:205)
	at scala.reflect.api.Printers.treeToString$(Printers.scala:205)
	at scala.reflect.api.Universe.treeToString(Universe.scala:73)
	at scala.reflect.api.Trees$TreeApi.toString(Trees.scala:188)
	at scala.reflect.api.Trees$TreeApi.toString$(Trees.scala:188)
	at scala.reflect.internal.Trees$TreeContextApiImpl.toString(Trees.scala:112)
	at java.lang.String.valueOf(String.java:2994)
	at java.lang.StringBuilder.append(StringBuilder.java:131)
	at scala.tools.nsc.tasty.bridge.AnnotationOps.$anonfun$mkAnnotationDeferred$3(AnnotationOps.scala:35)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.log(ContextOps.scala:91)
	at scala.tools.nsc.tasty.bridge.AnnotationOps.$anonfun$mkAnnotationDeferred$1(AnnotationOps.scala:35)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.forcedInfo$lzycompute(AnnotationInfos.scala:158)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.forcedInfo(AnnotationInfos.scala:158)
	at scala.reflect.internal.AnnotationInfos$LazyAnnotationInfo.atp(AnnotationInfos.scala:160)
	at scala.reflect.internal.AnnotationInfos$AnnotationInfo.symbol(AnnotationInfos.scala:232)
	at scala.reflect.internal.AnnotationInfos$AnnotationInfo.matches(AnnotationInfos.scala:253)
	at scala.reflect.internal.AnnotationInfos$Annotatable.dropOtherAnnotations(AnnotationInfos.scala:66)
	at scala.reflect.internal.AnnotationInfos$Annotatable.getAnnotation(AnnotationInfos.scala:55)
	at scala.reflect.internal.AnnotationInfos$Annotatable.getAnnotation$(AnnotationInfos.scala:53)
	at scala.reflect.internal.Symbols$Symbol.getAnnotation(Symbols.scala:221)
	at scala.reflect.internal.Types$TypeRef.isShowAsInfixType(Types.scala:2387)
	at scala.reflect.internal.Types$TypeRef.customToString(Types.scala:2695)
	at scala.reflect.internal.Types$TypeRef.safeToString(Types.scala:2702)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString(TypeToStrings.scala:55)
	at scala.reflect.internal.tpe.TypeToStrings.typeToString$(TypeToStrings.scala:34)
	at scala.reflect.internal.SymbolTable.typeToString(SymbolTable.scala:28)
	at scala.reflect.internal.Types$Type.toString(Types.scala:943)
	at java.lang.String.valueOf(String.java:2994)
	at java.lang.StringBuilder.append(StringBuilder.java:131)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.$anonfun$readNewMember$14(TreeUnpickler.scala:766)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.log(ContextOps.scala:91)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readNewMember(TreeUnpickler.scala:766)
	at scala.tools.nsc.tasty.TreeUnpickler$TreeReader.readIndexedMember(TreeUnpickler.scala:677)
	at scala.tools.nsc.tasty.TreeUnpickler$Completer.$anonfun$complete$1(TreeUnpickler.scala:93)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.$anonfun$withPhaseNoLater$1(ContextOps.scala:335)
	at scala.reflect.internal.SymbolTable.enteringPhaseNotLaterThan(SymbolTable.scala:315)
	at scala.tools.nsc.tasty.bridge.ContextOps$Context.withPhaseNoLater(ContextOps.scala:335)
	at scala.tools.nsc.tasty.TreeUnpickler$Completer.complete(TreeUnpickler.scala:92)
	at scala.tools.nsc.tasty.bridge.TypeOps$TastyLazyType.load(TypeOps.scala:204)
	at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.initRoot(SymbolLoaders.scala:269)
	at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:250)
	at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.load(SymbolLoaders.scala:257)
	at scala.tools.nsc.typechecker.Typers$Typer.isStale(Typers.scala:527)
	at scala.tools.nsc.typechecker.Typers$Typer.reallyExists(Typers.scala:518)
	at scala.tools.nsc.typechecker.Typers$Typer.qualifies$1(Typers.scala:5453)
	at scala.tools.nsc.typechecker.Typers$Typer.termQualifies$1(Typers.scala:5484)
	at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typed1$68(Typers.scala:5489)
	at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typed1$68$adapted(Typers.scala:5489)
	at scala.tools.nsc.typechecker.Contexts$SymbolLookup.lookupInScope$1(Contexts.scala:1416)
	at scala.tools.nsc.typechecker.Contexts$SymbolLookup.nextDefinition$1(Contexts.scala:1457)
	at scala.tools.nsc.typechecker.Contexts$SymbolLookup.apply(Contexts.scala:1463)
	at scala.tools.nsc.typechecker.Contexts$Context.$anonfun$lookupSymbol$1(Contexts.scala:1280)
	at scala.reflect.internal.util.ReusableInstance.using(ReusableInstance.scala:30)
	at scala.tools.nsc.typechecker.Contexts$Context.lookupSymbol(Contexts.scala:1280)
	at scala.tools.nsc.typechecker.Typers$Typer.typedIdent$2(Typers.scala:5489)
	at scala.tools.nsc.typechecker.Typers$Typer.typedIdentOrWildcard$1(Typers.scala:5540)
	at scala.tools.nsc.typechecker.Typers$Typer.typedInAnyMode$1(Typers.scala:5996)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6015)
	at scala.tools.nsc.typechecker.Typers$Typer.typedAppliedTypeTree$1(Typers.scala:5566)
	at scala.tools.nsc.typechecker.Typers$Typer.typedTypTree$1(Typers.scala:5939)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6013)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6044)
	at scala.tools.nsc.typechecker.Typers$Typer.typedType(Typers.scala:6225)
	at scala.tools.nsc.typechecker.Typers$Typer.typedType(Typers.scala:6228)
	at scala.tools.nsc.typechecker.Namers$Namer.methodSig(Namers.scala:1349)
	at scala.tools.nsc.typechecker.Namers$Namer.memberSig(Namers.scala:1908)
	at scala.tools.nsc.typechecker.Namers$Namer.typeSig(Namers.scala:1873)
	at scala.tools.nsc.typechecker.Namers$Namer$MonoTypeCompleter.completeImpl(Namers.scala:875)
	at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete(Namers.scala:2058)
	at scala.tools.nsc.typechecker.Namers$LockingTypeCompleter.complete$(Namers.scala:2056)
	at scala.tools.nsc.typechecker.Namers$TypeCompleterBase.complete(Namers.scala:2051)
	at scala.reflect.internal.Symbols$Symbol.completeInfo(Symbols.scala:1553)
	at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1525)
	at scala.reflect.internal.Symbols$Symbol.initialize(Symbols.scala:1714)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:5643)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6044)
	at scala.tools.nsc.typechecker.Typers$Typer.typedByValueExpr(Typers.scala:6108)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:3298)
	at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$8(Typers.scala:3450)
	at scala.collection.immutable.List.loop$3(List.scala:445)
	at scala.collection.immutable.List.mapConserve(List.scala:470)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3450)
	at scala.tools.nsc.typechecker.Typers$Typer.typedTemplate(Typers.scala:2080)
	at scala.tools.nsc.typechecker.Typers$Typer.typedModuleDef(Typers.scala:1955)
	at scala.tools.nsc.typechecker.Typers$Typer.typedMemberDef$1(Typers.scala:5953)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6014)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6044)
	at scala.tools.nsc.typechecker.Typers$Typer.typedByValueExpr(Typers.scala:6108)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStat$1(Typers.scala:3298)
	at scala.tools.nsc.typechecker.Typers$Typer.$anonfun$typedStats$8(Typers.scala:3450)
	at scala.collection.immutable.List.loop$3(List.scala:445)
	at scala.collection.immutable.List.mapConserve(List.scala:470)
	at scala.tools.nsc.typechecker.Typers$Typer.typedStats(Typers.scala:3450)
	at scala.tools.nsc.typechecker.Typers$Typer.typedPackageDef$1(Typers.scala:5652)
	at scala.tools.nsc.typechecker.Typers$Typer.typedMemberDef$1(Typers.scala:5955)
	at scala.tools.nsc.typechecker.Typers$Typer.typed1(Typers.scala:6014)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6044)
	at scala.tools.nsc.typechecker.Typers$Typer.typed(Typers.scala:6106)
	at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.apply(Analyzer.scala:117)
	at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:451)
	at scala.tools.nsc.typechecker.Analyzer$typerFactory$TyperPhase.run(Analyzer.scala:105)
	at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1505)
	at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1489)
	at scala.tools.nsc.Global$Run.compileSources(Global.scala:1481)
	at scala.tools.nsc.Global$Run.compile(Global.scala:1616)
	at scala.tools.nsc.Driver.doCompile(Driver.scala:48)
	at scala.tools.nsc.MainClass.doCompile(Main.scala:30)
	at scala.tools.nsc.Driver.process(Driver.scala:68)
	at scala.tools.nsc.Driver.main(Driver.scala:82)
	at scala.tools.nsc.Main.main(Main.scala)
Log
#[class Delayed]: Unpickling test/tasty/pos/out/tastytest/Delayed.tasty
#[class Delayed]: reading names:
#[class Delayed]: 0: ASTs
#[class Delayed]: 1: tastytest
#[class Delayed]: 2: Delayed
#[class Delayed]: 3: L
#[class Delayed]: 4: Nothing
#[class Delayed]: 5: scala
#[class Delayed]: 6: Any
#[class Delayed]: 7: R
#[class Delayed]: 8: Object
#[class Delayed]: 9: java
#[class Delayed]: 10: lang
#[class Delayed]: 11: java[Qualified . lang]
#[class Delayed]: 12: <init>
#[class Delayed]: 13: Unit
#[class Delayed]: 14: SourceFile
#[class Delayed]: 15: annotation
#[class Delayed]: 16: scala[Qualified . annotation]
#[class Delayed]: 17: internal
#[class Delayed]: 18: scala[Qualified . annotation][Qualified . internal]
#[class Delayed]: 19: scala[Qualified . annotation][Qualified . internal][Qualified . SourceFile]
#[class Delayed]: 20: String
#[class Delayed]: 21: java[Qualified . lang][Qualified . String]
#[class Delayed]: 22: <init>[Signed (java.lang.String)scala.annotation.internal.SourceFile]
#[class Delayed]: 23: test/tasty/pos/src-3/tastytest/Delayed.scala
#[class Delayed]: 24: Child
#[class Delayed]: 25: scala[Qualified . annotation][Qualified . internal][Qualified . Child]
#[class Delayed]: 26: <init>[Signed (1)scala.annotation.internal.Child]
#[class Delayed]: 27: Delayed[ModuleClass]
#[class Delayed]: 28: tastytest[Qualified . Delayed]
#[class Delayed]: 29: tastytest[Qualified . Delayed][ModuleClass]
#[class Delayed]: 30: <init>[Signed ()object tastytest.Delayed]
#[class Delayed]: 31: java[Qualified . lang][Qualified . Object]
#[class Delayed]: 32: <init>[Signed ()java.lang.Object]
#[class Delayed]: 33: Serializable
#[class Delayed]: 34: _root_
#[class Delayed]: 35: _
#[class Delayed]: 36: writeReplace
#[class Delayed]: 37: AnyRef
#[class Delayed]: 38: runtime
#[class Delayed]: 39: scala[Qualified . runtime]
#[class Delayed]: 40: ModuleSerializationProxy
#[class Delayed]: 41: scala[Qualified . runtime][Qualified . ModuleSerializationProxy]
#[class Delayed]: 42: Class
#[class Delayed]: 43: java[Qualified . lang][Qualified . Class]
#[class Delayed]: 44: <init>[Signed (java.lang.Class)scala.runtime.ModuleSerializationProxy]
#[class Delayed]: 45: Empty
#[class Delayed]: 46: Positions
#[class Delayed]: 47: Comments
#[class Delayed]: Addr(3) reading type TERMREFpkg:
#[class Delayed]: Addr(5) No symbol found at current address, ensuring one exists:
#[class Delayed]: Addr(5) ::: => create TYPEDEF Delayed[Type]
#[class Delayed]: <<< Addr(67) reading annotation:
#[class Delayed]: Addr(69) reading type TYPEREF:
#[class Delayed]: Addr(71) reading type TERMREFpkg:
#[class Delayed]: >>> LazyAnnotationRef[scala.annotation.internal.SourceFile](<lazy>)
#[class Delayed]: <<< Addr(82) reading annotation:
#[class Delayed]: Addr(84) reading type TYPEREF:
#[class Delayed]: Addr(86) reading type SHAREDtype:
#[class Delayed]: Addr(71) reading type TERMREFpkg:
#[class Delayed]: >>> LazyAnnotationRef[scala.annotation.internal.Child](<lazy>)
#[class Delayed]: Addr(5) parsed flags Sealed | Trait
#[trait Delayed]: Addr(5) replaced info of Symbol(trait Delayed, #6349)
#[trait Delayed]: Addr(5) registered Symbol(trait Delayed, #6349) in package tastytest
#[trait Delayed]: Addr(10) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(10) ::: => create TYPEPARAM L[Type]
#[trait Delayed]: Addr(10) parsed flags Private | Local | Covariant
#[trait Delayed]: Addr(10) registered Symbol(type L, #7289) in trait tastytest.Delayed
#[trait Delayed]: Addr(26) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(26) ::: => create TYPEPARAM R[Type]
#[trait Delayed]: Addr(26) parsed flags Private | Local | Covariant
#[trait Delayed]: Addr(26) registered Symbol(type R, #7290) in trait tastytest.Delayed
#[trait Delayed]: Addr(105) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(105) ::: => create VALDEF Delayed
#[trait Delayed]: Addr(105) parsed flags Object | Stable
#[trait Delayed]: Addr(105) replaced info of Symbol(object Delayed, #6350)
#[trait Delayed]: Addr(105) registered Symbol(object Delayed, #6350) in package tastytest
#[trait Delayed]: Addr(121) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(121) ::: => create TYPEDEF Delayed[ModuleClass][Type]
#[trait Delayed]: <<< Addr(216) reading annotation:
#[trait Delayed]: Addr(218) reading type SHAREDtype:
#[trait Delayed]: Addr(69) reading type TYPEREF:
#[trait Delayed]: Addr(71) reading type TERMREFpkg:
#[trait Delayed]: >>> LazyAnnotationRef[scala.annotation.internal.SourceFile](<lazy>)
#[trait Delayed]: Addr(121) parsed flags Object
#[trait Delayed]: Addr(121) replaced info of Symbol(object Delayed, #6351)
#[trait Delayed]: Addr(121) registered Symbol(object Delayed, #6351) in package tastytest
#[trait Delayed]: Addr(5) completing Symbol(trait Delayed, #6349):
#[trait Delayed]: Addr(8) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(8) registered Symbol(value <local Delayed>, #7291) in trait tastytest.Delayed
#[trait Delayed]: Addr(5) Template: reading parameters of trait Delayed:
#[trait Delayed]: Addr(10) completing Symbol(type L, #7289):
#[trait Delayed]: Addr(13) reading type TYPEBOUNDS:
#[trait Delayed]: Addr(15) reading type TYPEREF:
#[trait Delayed]: Addr(17) reading type TERMREFpkg:
#[trait Delayed]: Addr(19) reading type TYPEREF:
#[trait Delayed]: Addr(21) reading type SHAREDtype:
#[trait Delayed]: Addr(17) reading type TERMREFpkg:
#[trait Delayed]: Addr(10) typeOf(Symbol(type L, #7289)) =:= L; owned by trait tastytest.Delayed
#[trait Delayed]: Addr(26) completing Symbol(type R, #7290):
#[trait Delayed]: Addr(29) reading type SHAREDtype:
#[trait Delayed]: Addr(13) reading type TYPEBOUNDS:
#[trait Delayed]: Addr(15) reading type TYPEREF:
#[trait Delayed]: Addr(17) reading type TERMREFpkg:
#[trait Delayed]: Addr(19) reading type TYPEREF:
#[trait Delayed]: Addr(21) reading type SHAREDtype:
#[trait Delayed]: Addr(26) typeOf(Symbol(type R, #7290)) =:= R; owned by trait tastytest.Delayed
#[trait Delayed]: Addr(5) Template: indexing members of trait Delayed:
#[trait Delayed]: Addr(38) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(38) ::: => create DEFDEF <init>
#[trait Delayed]: Addr(38) parsed flags Stable
#[trait Delayed]: Addr(38) registered Symbol(constructor Delayed, #7292) in trait tastytest.Delayed
#[trait Delayed]: Addr(5) Template: adding parents of trait Delayed:
#[trait Delayed]: Addr(34) reading type TYPEREF:
#[trait Delayed]: Addr(36) reading type TERMREFpkg:
#[trait Delayed]: Addr(5) Template: Updated info of trait Delayed extends AnyRef
#[trait Delayed]: Addr(73) starting to read annotation with owner trait Delayed
#[trait Delayed]: Addr(73) reading term APPLY:
#[trait Delayed]: Addr(75) reading term SELECT:
#[trait Delayed]: Addr(77) reading term NEW:
#[trait Delayed]: Addr(78) reading type SHAREDtype:
#[class SourceFile]: Unpickling scala/annotation/internal/SourceFile.tasty
#[class SourceFile]: reading names:
#[class SourceFile]: 0: ASTs
#[class SourceFile]: 1: scala
#[class SourceFile]: 2: annotation
#[class SourceFile]: 3: scala[Qualified . annotation]
#[class SourceFile]: 4: internal
#[class SourceFile]: 5: scala[Qualified . annotation][Qualified . internal]
#[class SourceFile]: 6: Annotation
#[class SourceFile]: 7: SourceFile
#[class SourceFile]: 8: path
#[class SourceFile]: 9: String
#[class SourceFile]: 10: Predef
#[class SourceFile]: 11: <init>
#[class SourceFile]: 12: scala[Qualified . annotation][Qualified . Annotation]
#[class SourceFile]: 13: <init>[Signed ()scala.annotation.Annotation]
#[class SourceFile]: 14: Unit
#[class SourceFile]: 15: Positions
#[class SourceFile]: 16: /drone/src/library/src/scala/annotation/internal/SourceFile.scala
#[class SourceFile]: 17: Comments
#[class SourceFile]: Addr(2) reading type TERMREFpkg:
#[class SourceFile]: Addr(12) No symbol found at current address, ensuring one exists:
#[class SourceFile]: Addr(12) ::: => create TYPEDEF SourceFile[Type]
#[class SourceFile]: Addr(12) parsed flags EmptyTastyFlags
#[class SourceFile]: Addr(12) replaced info of Symbol(class SourceFile, #7268)
#[class SourceFile]: Addr(12) registered Symbol(class SourceFile, #7268) in package scala.annotation.internal
#[class SourceFile]: Addr(17) No symbol found at current address, ensuring one exists:
#[class SourceFile]: Addr(17) ::: => create PARAM path
#[class SourceFile]: Addr(17) parsed flags Private | Local
#[class SourceFile]: Addr(17) registered Symbol(value path, #7293) in class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(12) completing Symbol(class SourceFile, #7268):
#[class SourceFile]: Addr(15) No symbol found at current address, ensuring one exists:
#[class SourceFile]: Addr(15) registered Symbol(value <local SourceFile>, #7294) in class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(12) Template: reading parameters of class SourceFile:
#[class SourceFile]: Addr(17) completing Symbol(value path, #7293):
#[class SourceFile]: Addr(20) reading type TYPEREF:
#[class SourceFile]: Addr(22) reading type TERMREF:
#[class SourceFile]: Addr(24) reading type TERMREFpkg:
#[class SourceFile]: Addr(17) typeOf(Symbol(value path, #7293)) =:= String; owned by class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(12) Template: indexing members of class SourceFile:
#[class SourceFile]: Addr(39) No symbol found at current address, ensuring one exists:
#[class SourceFile]: Addr(39) ::: => create DEFDEF <init>
#[class SourceFile]: Addr(39) parsed flags EmptyTastyFlags
#[class SourceFile]: Addr(39) registered Symbol(constructor SourceFile, #7295) in class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(12) Template: adding parents of class SourceFile:
#[class SourceFile]: Addr(28) reading term APPLY:
#[class SourceFile]: Addr(30) reading term SELECT:
#[class SourceFile]: Addr(32) reading term NEW:
#[class SourceFile]: Addr(33) reading term IDENTtpt:
#[class SourceFile]: Addr(35) reading type TYPEREF:
#[class SourceFile]: Addr(37) reading type TERMREFpkg:
#[class SourceFile]: Addr(12) Template: Updated info of class SourceFile extends scala.annotation.Annotation
#[class SourceFile]: Addr(12) typeOf(Symbol(class SourceFile, #7268)) =:= scala.annotation.internal.SourceFile; owned by package scala.annotation.internal
#[trait Delayed]: <<< looking for overload member[scala.annotation.internal.SourceFile] @@ <init>: (String)scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(39) completing Symbol(constructor SourceFile, #7295):
#[class SourceFile]: Addr(42) No symbol found at current address, ensuring one exists:
#[class SourceFile]: Addr(42) ::: => create PARAM path
#[class SourceFile]: Addr(42) parsed flags EmptyTastyFlags
#[class SourceFile]: Addr(42) registered Symbol(value path, #7297) in constructor <init> in class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(42) completing Symbol(value path, #7297):
#[class SourceFile]: Addr(45) reading term IDENTtpt:
#[class SourceFile]: Addr(47) reading type SHAREDtype:
#[class SourceFile]: Addr(20) reading type TYPEREF:
#[class SourceFile]: Addr(22) reading type TERMREF:
#[class SourceFile]: Addr(24) reading type TERMREFpkg:
#[class SourceFile]: Addr(42) typeOf(Symbol(value path, #7297)) =:= String; owned by constructor <init> in class scala.annotation.internal.SourceFile
#[class SourceFile]: Addr(49) reading type TYPEREF:
#[class SourceFile]: Addr(51) reading type SHAREDtype:
#[class SourceFile]: Addr(24) reading type TERMREFpkg:
#[class SourceFile]: Addr(39) typeOf(Symbol(constructor SourceFile, #7295)) =:= (path: String): scala.annotation.internal.SourceFile; owned by class scala.annotation.internal.SourceFile
#[trait Delayed]: >>> selected Symbol(constructor SourceFile, #7295): (path: String): scala.annotation.internal.SourceFile
#[trait Delayed]: Addr(80) reading term STRINGconst:
#[trait Delayed]: Addr(80) reading type STRINGconst:
#[class Child]: Unpickling scala/annotation/internal/Child.tasty
#[class Child]: reading names:
#[class Child]: 0: ASTs
#[class Child]: 1: scala
#[class Child]: 2: annotation
#[class Child]: 3: scala[Qualified . annotation]
#[class Child]: 4: internal
#[class Child]: 5: scala[Qualified . annotation][Qualified . internal]
#[class Child]: 6: Annotation
#[class Child]: 7: Child
#[class Child]: 8: T
#[class Child]: 9: Nothing
#[class Child]: 10: Any
#[class Child]: 11: <init>
#[class Child]: 12: scala[Qualified . annotation][Qualified . Annotation]
#[class Child]: 13: <init>[Signed ()scala.annotation.Annotation]
#[class Child]: 14: Unit
#[class Child]: 15: SourceFile
#[class Child]: 16: scala[Qualified . annotation][Qualified . internal][Qualified . SourceFile]
#[class Child]: 17: java
#[class Child]: 18: lang
#[class Child]: 19: java[Qualified . lang]
#[class Child]: 20: String
#[class Child]: 21: java[Qualified . lang][Qualified . String]
#[class Child]: 22: <init>[Signed (java.lang.String)scala.annotation.internal.SourceFile]
#[class Child]: 23: /drone/src/library/src/scala/annotation/internal/Child.scala
#[class Child]: 24: Positions
#[class Child]: 25: Comments
#[class Child]: Addr(2) reading type TERMREFpkg:
#[class Child]: Addr(12) No symbol found at current address, ensuring one exists:
#[class Child]: Addr(12) ::: => create TYPEDEF Child[Type]
#[class Child]: <<< Addr(60) reading annotation:
#[class Child]: Addr(62) reading type TYPEREF:
#[class Child]: Addr(64) reading type TERMREFpkg:
#[class Child]: >>> LazyAnnotationRef[scala.annotation.internal.SourceFile](<lazy>)
#[class Child]: Addr(12) parsed flags EmptyTastyFlags
#[class Child]: Addr(12) replaced info of Symbol(class Child, #7271)
#[class Child]: Addr(12) registered Symbol(class Child, #7271) in package scala.annotation.internal
#[class Child]: Addr(17) No symbol found at current address, ensuring one exists:
#[class Child]: Addr(17) ::: => create TYPEPARAM T[Type]
#[class Child]: Addr(17) parsed flags Private | Local
#[class Child]: Addr(17) registered Symbol(type T, #7298) in class scala.annotation.internal.Child
#[class Child]: Addr(12) completing Symbol(class Child, #7271):
#[class Child]: Addr(15) No symbol found at current address, ensuring one exists:
#[class Child]: Addr(15) registered Symbol(value <local Child>, #7299) in class scala.annotation.internal.Child
#[class Child]: Addr(12) Template: reading parameters of class Child:
#[class Child]: Addr(17) completing Symbol(type T, #7298):
#[class Child]: Addr(20) reading type TYPEBOUNDS:
#[class Child]: Addr(22) reading type TYPEREF:
#[class Child]: Addr(24) reading type TERMREFpkg:
#[class Child]: Addr(26) reading type TYPEREF:
#[class Child]: Addr(28) reading type SHAREDtype:
#[class Child]: Addr(24) reading type TERMREFpkg:
#[class Child]: Addr(17) typeOf(Symbol(type T, #7298)) =:= T; owned by class scala.annotation.internal.Child
#[class Child]: Addr(12) Template: indexing members of class Child:
#[class Child]: Addr(43) No symbol found at current address, ensuring one exists:
#[class Child]: Addr(43) ::: => create DEFDEF <init>
#[class Child]: Addr(43) parsed flags EmptyTastyFlags
#[class Child]: Addr(43) registered Symbol(constructor Child, #7300) in class scala.annotation.internal.Child
#[class Child]: Addr(12) Template: adding parents of class Child:
#[class Child]: Addr(32) reading term APPLY:
#[class Child]: Addr(34) reading term SELECT:
#[class Child]: Addr(36) reading term NEW:
#[class Child]: Addr(37) reading term IDENTtpt:
#[class Child]: Addr(39) reading type TYPEREF:
#[class Child]: Addr(41) reading type TERMREFpkg:
#[class Child]: Addr(12) Template: Updated info of class Child extends scala.annotation.Annotation
#[class Child]: Addr(12) typeOf(Symbol(class Child, #7271)) =:= scala.annotation.internal.Child[T]; owned by package scala.annotation.internal
#[trait Delayed]: annotation of trait Delayed = new scala.annotation.internal.SourceFile("test/tasty/pos/src-3/tastytest/Delayed.scala")
#[trait Delayed]: Addr(88) starting to read annotation with owner trait Delayed
#[trait Delayed]: Addr(88) reading term APPLY:
#[trait Delayed]: Addr(90) reading term TYPEAPPLY:
#[trait Delayed]: Addr(92) reading term SELECT:
#[trait Delayed]: Addr(94) reading term NEW:
#[trait Delayed]: Addr(95) reading type SHAREDtype:
#[trait Delayed]: Addr(84) reading type TYPEREF:
#[trait Delayed]: Addr(86) reading type SHAREDtype:
#[trait Delayed]: <<< looking for overload member[scala.annotation.internal.Child] @@ <init>: (1)scala.annotation.internal.Child[_]
#[class Child]: Addr(43) completing Symbol(constructor Child, #7300):
#[class Child]: Addr(56) reading type TYPEREF:
#[class Child]: Addr(58) reading type SHAREDtype:
#[class Child]: Addr(43) typeOf(Symbol(constructor Child, #7300)) =:= (): scala.annotation.internal.Child[T]; owned by class scala.annotation.internal.Child
#[trait Delayed]: >>> selected Symbol(constructor Child, #7300): (): scala.annotation.internal.Child[T]
#[trait Delayed]: Addr(97) reading type TYPEREFsymbol:
#[trait Delayed]: <<< No symbol found at forward reference Addr(176), ensuring one exists:
#[trait Delayed]: Addr(176) within owner Symbol(object Delayed, #6351) do:
#[trait Delayed]: Addr(176) ::: => create TYPEDEF Empty[Type]
#[trait Delayed]: Addr(176) parsed flags Final
#[trait Delayed]: Addr(176) registered Symbol(class Empty, #7303) in object tastytest.Delayed
#[trait Delayed]: >>> Addr(176) forward reference to Symbol(class Empty, #7303)
#[trait Delayed]: Addr(100) reading type THIS:
#[trait Delayed]: Addr(101) reading type TYPEREFsymbol:
#[trait Delayed]: Addr(103) reading type TERMREFpkg:
#[trait Delayed]: Addr(176) completing Symbol(class Empty, #7303):
#[trait Delayed]: Addr(121) completing Symbol(object Delayed, #6351):
#[trait Delayed]: Addr(105) completing Symbol(object Delayed, #6350):
#[trait Delayed]: Addr(108) reading term IDENTtpt:
#[trait Delayed]: Addr(110) reading type SHAREDtype:
#[trait Delayed]: Addr(101) reading type TYPEREFsymbol:
#[trait Delayed]: Addr(103) reading type TERMREFpkg:
#[trait Delayed]: Addr(105) typeOf(Symbol(object Delayed, #6350)) =:= tastytest.Delayed.type; owned by package tastytest
#[trait Delayed]: Addr(124) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(124) registered Symbol(value <local Delayed>, #7304) in object tastytest.Delayed
#[trait Delayed]: Addr(121) Template: reading parameters of object Delayed:
#[trait Delayed]: Addr(121) Template: indexing members of object Delayed:
#[trait Delayed]: Addr(146) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(146) ::: => create DEFDEF <init>
#[trait Delayed]: Addr(146) parsed flags Stable
#[trait Delayed]: Addr(146) registered Symbol(constructor Delayed, #7305) in object tastytest.Delayed
#[trait Delayed]: Addr(153) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(153) ::: => create DEFDEF writeReplace
#[trait Delayed]: Addr(153) parsed flags Private | Synthetic
#[trait Delayed]: Addr(153) registered Symbol(method writeReplace, #7306) in object tastytest.Delayed
#[trait Delayed]: Addr(121) Template: adding parents of object Delayed:
#[trait Delayed]: Addr(126) reading term APPLY:
#[trait Delayed]: Addr(128) reading term SELECT:
#[trait Delayed]: Addr(130) reading term NEW:
#[trait Delayed]: Addr(131) reading type SHAREDtype:
#[trait Delayed]: Addr(34) reading type TYPEREF:
#[trait Delayed]: Addr(36) reading type TERMREFpkg:
#[trait Delayed]: Addr(133) reading term SELECTtpt:
#[trait Delayed]: Addr(135) reading term SELECT:
#[trait Delayed]: Addr(137) reading term TERMREFpkg:
#[trait Delayed]: Addr(137) reading type TERMREFpkg:
#[trait Delayed]: Addr(121) Template: adding self-type of object Delayed:
#[trait Delayed]: Addr(141) reading term SINGLETONtpt:
#[trait Delayed]: Addr(142) reading term TERMREFsymbol:
#[trait Delayed]: Addr(142) reading type TERMREFsymbol:
#[trait Delayed]: Addr(144) reading type SHAREDtype:
#[trait Delayed]: Addr(103) reading type TERMREFpkg:
#[trait Delayed]: Addr(121) Template: self-type is tastytest#Delayed.type
#[trait Delayed]: Addr(121) Template: Updated info of object Delayed extends AnyRef with java.io.Serializable
#[trait Delayed]: Addr(121) typeOf(Symbol(object Delayed, #6351)) =:= tastytest.Delayed.type; owned by package tastytest
#[trait Delayed]: Addr(220) starting to read annotation with owner object Delayed
#[trait Delayed]: Addr(220) reading term APPLY:
#[trait Delayed]: Addr(222) reading term SELECT:
#[trait Delayed]: Addr(224) reading term NEW:
#[trait Delayed]: Addr(225) reading type SHAREDtype:
#[trait Delayed]: <<< looking for overload member[scala.annotation.internal.SourceFile] @@ <init>: (String)scala.annotation.internal.SourceFile
#[trait Delayed]: >>> selected Symbol(constructor SourceFile, #7295): (path: String): scala.annotation.internal.SourceFile
#[trait Delayed]: Addr(227) reading term STRINGconst:
#[trait Delayed]: Addr(227) reading type STRINGconst:
#[trait Delayed]: annotation of object Delayed = new scala.annotation.internal.SourceFile("test/tasty/pos/src-3/tastytest/Delayed.scala")
#[trait Delayed]: Addr(179) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(179) registered Symbol(value <local Empty>, #7308) in class tastytest.Delayed.Empty
#[trait Delayed]: Addr(176) Template: reading parameters of class Empty:
#[trait Delayed]: Addr(176) Template: indexing members of class Empty:
#[trait Delayed]: Addr(207) No symbol found at current address, ensuring one exists:
#[trait Delayed]: Addr(207) ::: => create DEFDEF <init>
#[trait Delayed]: Addr(207) parsed flags Stable
#[trait Delayed]: Addr(207) registered Symbol(constructor Empty, #7309) in class tastytest.Delayed.Empty
#[trait Delayed]: Addr(176) Template: adding parents of class Empty:
#[trait Delayed]: Addr(181) reading term APPLY:
#[trait Delayed]: Addr(183) reading term SELECT:
#[trait Delayed]: Addr(185) reading term NEW:
#[trait Delayed]: Addr(186) reading type SHAREDtype:
#[trait Delayed]: Addr(188) reading term APPLIEDtpt:
#[trait Delayed]: Addr(190) reading term IDENTtpt:
#[trait Delayed]: Addr(192) reading type TYPEREFsymbol:
#[trait Delayed]: Addr(194) reading type SHAREDtype:
#[trait Delayed]: Addr(196) reading term IDENTtpt:
#[trait Delayed]: Addr(198) reading type TYPEREF:
#[trait Delayed]: Addr(200) reading type TERMREFpkg:
#[trait Delayed]: Addr(202) reading term IDENTtpt:
#[trait Delayed]: Addr(204) reading type SHAREDtype:
#[trait Delayed]: Addr(198) reading type TYPEREF:
#[trait Delayed]: Addr(200) reading type TERMREFpkg:
#[trait Delayed]: Addr(105) starting to read annotation with owner trait Delayed
#[trait Delayed]: Addr(105) reading term VALDEF:
#[trait Delayed]: Addr(105) reading type VALDEF:

it turns out that the evaluation of the child annotation tree happened twice, even though internally within a LazyAnnotationInfo a lazy val is used to compute the annotation, so perhaps mkAnnotationDeferred caused some cyclic reference