diff options
Diffstat (limited to 'test/files/pos/t788.scala')
-rw-r--r-- | test/files/pos/t788.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/files/pos/t788.scala b/test/files/pos/t788.scala new file mode 100644 index 0000000000..19638dd170 --- /dev/null +++ b/test/files/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; + } + } +} |