aboutsummaryrefslogtreecommitdiff
path: root/tests/untried/neg/t836.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/untried/neg/t836.scala')
-rw-r--r--tests/untried/neg/t836.scala16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/untried/neg/t836.scala b/tests/untried/neg/t836.scala
new file mode 100644
index 000000000..3633b816c
--- /dev/null
+++ b/tests/untried/neg/t836.scala
@@ -0,0 +1,16 @@
+abstract class Obj { type S }
+class ObjImpl extends Obj { type S = String }
+
+abstract class A {
+ type MyObj <: Obj
+ type S = MyObj#S
+
+ val any: Any = 0
+ val some: S = any // compiles => type X is set to scala.Any
+}
+
+class B extends A {
+ type MyObj = ObjImpl
+ val myString: S = "hello"
+ val realString: String = myString // error: type missmatch
+}