summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/pending/pos/bug112606A.scala25
-rw-r--r--test/pending/pos/bug112606B.scala11
2 files changed, 36 insertions, 0 deletions
diff --git a/test/pending/pos/bug112606A.scala b/test/pending/pos/bug112606A.scala
new file mode 100644
index 0000000000..5bf532f8dd
--- /dev/null
+++ b/test/pending/pos/bug112606A.scala
@@ -0,0 +1,25 @@
+package test;
+trait Test {
+ trait Global {
+ type Tree;
+ def get : Tree;
+ }
+ trait TreeBuilder {
+ val global : Global;
+ def set(tree : global.Tree) = {}
+ }
+ val nsc : Global;
+ trait FileImpl {
+ object treeBuilder extends TreeBuilder {
+ val global : nsc.type = nsc;
+ }
+ // ok
+ treeBuilder.set(nsc.get);
+ }
+ val file0 : FileImpl;
+ // ok
+ file0.treeBuilder.set(nsc.get);
+ def file : FileImpl;
+ // type mismatch
+ file.treeBuilder.set(nsc.get);
+}
diff --git a/test/pending/pos/bug112606B.scala b/test/pending/pos/bug112606B.scala
new file mode 100644
index 0000000000..6dfaf4bf01
--- /dev/null
+++ b/test/pending/pos/bug112606B.scala
@@ -0,0 +1,11 @@
+package test;
+trait Test2 {
+ case class Token(text : String);
+ class KeywordToken(text : String) extends Token(text);
+ def decode(tok : KeywordToken) = tok match {
+ // constructor cannot be instantiated to expected type;
+ // found : Test2.this.Token
+ // required: Test2.this.KeywordToken
+ case Token("final") => true;
+ }
+}