summaryrefslogtreecommitdiff
path: root/test/files/pos/t2741
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2011-01-26 07:33:07 +0000
committerAdriaan Moors <adriaan.moors@epfl.ch>2011-01-26 07:33:07 +0000
commitec9b00e1955fb24038542c5ba67ba8483efb5b50 (patch)
treeb3d4d3cc538ce40735c1efc7a9eb99cf2f43d4ea /test/files/pos/t2741
parentfe1f2b8096571947ac07126fb155aba94ea2088a (diff)
downloadscala-ec9b00e1955fb24038542c5ba67ba8483efb5b50.tar.gz
scala-ec9b00e1955fb24038542c5ba67ba8483efb5b50.tar.bz2
scala-ec9b00e1955fb24038542c5ba67ba8483efb5b50.zip
closes #2741, #4079: pickling now ensures that ...
closes #2741, #4079: pickling now ensures that a local type param with a non-local owner, which will thus get a localized owner, will only get a class as its localized owner if its old owner was a class (otherwise, NoSymbol) this ensures that asSeenFrom does not treat typerefs to this symbol differently after pickling. todo: should we pro-actively set the owner of these type params to something else than the type alias that they originate from? see notes in typeFunAnon review by odersky
Diffstat (limited to 'test/files/pos/t2741')
-rw-r--r--test/files/pos/t2741/2741_1.scala9
-rw-r--r--test/files/pos/t2741/2741_2.scala5
2 files changed, 14 insertions, 0 deletions
diff --git a/test/files/pos/t2741/2741_1.scala b/test/files/pos/t2741/2741_1.scala
new file mode 100644
index 0000000000..d47ed3b6cb
--- /dev/null
+++ b/test/files/pos/t2741/2741_1.scala
@@ -0,0 +1,9 @@
+trait Partial {
+ type Apply[XYZ] = List[XYZ]
+}
+trait MA[M[_]]
+trait MAs {
+ val a: MA[Partial#Apply] = null // after compilation, the type is pickled as `MA[ [B] List[B] ]`
+}
+
+object Scalaz extends MAs \ No newline at end of file
diff --git a/test/files/pos/t2741/2741_2.scala b/test/files/pos/t2741/2741_2.scala
new file mode 100644
index 0000000000..41f6a64260
--- /dev/null
+++ b/test/files/pos/t2741/2741_2.scala
@@ -0,0 +1,5 @@
+// object Test compiles jointly, but not separately.
+object Test {
+ import Scalaz._
+ Scalaz.a
+} \ No newline at end of file