aboutsummaryrefslogtreecommitdiff
path: root/tests/pending/pos/t788.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/pending/pos/t788.scala')
-rw-r--r--tests/pending/pos/t788.scala19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/pending/pos/t788.scala b/tests/pending/pos/t788.scala
new file mode 100644
index 000000000..19638dd17
--- /dev/null
+++ b/tests/pending/pos/t788.scala
@@ -0,0 +1,19 @@
+package test;
+
+trait Test {
+ type Node <: NodeImpl;
+ trait NodeImpl;
+ type Expression <: Node with ExpressionImpl;
+ trait ExpressionImpl extends NodeImpl {
+ def self : Expression;
+ }
+ type Named <: Node with NamedImpl;
+ trait NamedImpl extends NodeImpl {
+ def self : Named;
+ }
+ def asExpression(e : ExpressionImpl) : Named = {
+ e match {
+ case f : NamedImpl => f.self;
+ }
+ }
+}