aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg-with-implicits/t591.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg-with-implicits/t591.scala')
-rw-r--r--tests/untried/neg-with-implicits/t591.scala41
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/untried/neg-with-implicits/t591.scala b/tests/untried/neg-with-implicits/t591.scala
new file mode 100644
index 000000000..0f0b02395
--- /dev/null
+++ b/tests/untried/neg-with-implicits/t591.scala
@@ -0,0 +1,41 @@
+abstract class BaseList {
+ type Node <: BaseNode;
+
+
+ abstract class BaseNode {
+ protected def self : Node;
+ private[BaseList] def self00 = self;
+ def dirty : Unit = {}
+ def replaceWith(node : Node) = {}
+ }
+
+ implicit def baseNode2Node(bnode : BaseNode): Node = bnode.self00;
+
+
+}
+
+
+trait BaseFlow extends BaseList {
+ type Node <: BFNode;
+ type Flow <: FlowBase;
+ type Output <: OutputBase;
+ type Input <: InputBase;
+
+ abstract class FlowBase {
+
+ }
+ trait OutputBase extends FlowBase {
+
+ }
+ trait InputBase extends FlowBase {
+
+ }
+
+ trait BFNode extends BaseNode {
+ private var input : Input = _;
+ private var output : Output = _;
+
+ def input_=(in : Input) = {}
+
+ }
+}