summaryrefslogtreecommitdiff
path: root/test/files/neg
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/neg')
-rw-r--r--test/files/neg/bug591.check4
-rw-r--r--test/files/neg/bug591.scala41
2 files changed, 45 insertions, 0 deletions
diff --git a/test/files/neg/bug591.check b/test/files/neg/bug591.check
new file mode 100644
index 0000000000..9d1a090053
--- /dev/null
+++ b/test/files/neg/bug591.check
@@ -0,0 +1,4 @@
+bug591.scala:38 error: method input_= is defined twice
+ def input_=(in : Input) = {}
+ ^
+one error found
diff --git a/test/files/neg/bug591.scala b/test/files/neg/bug591.scala
new file mode 100644
index 0000000000..94d8068bb3
--- /dev/null
+++ b/test/files/neg/bug591.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 = null;
+ private var output : Output = null;
+
+ def input_=(in : Input) = {}
+
+ }
+}