diff options
author | Martin Odersky <odersky@gmail.com> | 2013-04-05 19:15:35 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-04-05 19:16:11 +0200 |
commit | 82b37ed8ecccf8b41247d538231ed058df907d34 (patch) | |
tree | fa377681e8eea7a8b0fca722aa5b58eefb7bbb3f /test/test/showClass.scala | |
parent | eb781570824840e5b402a719e8b3e7c91a86a3d2 (diff) | |
download | dotty-82b37ed8ecccf8b41247d538231ed058df907d34.tar.gz dotty-82b37ed8ecccf8b41247d538231ed058df907d34.tar.bz2 dotty-82b37ed8ecccf8b41247d538231ed058df907d34.zip |
Pre-initializing Unpickler NamedTypes with their Denotations.
This fixes a weird problem where we read an external reference to a type parameter with NoPrefix as owner.
The problem arises when reading reflect.io.ZipFileArchive, where the reference is to the type parameter of AbstactFile.
It might be a known problem for Scala. For the moment there's nothing much we can do on the dotty side to deal with it. We either use .withDenot, and accept that this cannot be reloaded in future runs, or we use a HasFixedSym and risk a stale reference. It seems better to fail than to live with stale references.
Diffstat (limited to 'test/test/showClass.scala')
-rw-r--r-- | test/test/showClass.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/test/test/showClass.scala b/test/test/showClass.scala index 887ec170a..06b85f681 100644 --- a/test/test/showClass.scala +++ b/test/test/showClass.scala @@ -6,8 +6,8 @@ object showClass extends ShowClassTests { def main(args: Array[String]) = { for (arg <- args) showPackage(ctx.requiredPackage(arg)) - showClasses("scala.tools.nsc.settings.ScalaSettings") -// showPackage("scala.reflect") +// showClasses("scala.reflect.io.FileZipArchive") + showPackage("scala.reflect") // showPackage("scala") println("done") } |