summaryrefslogtreecommitdiff
path: root/test-nsc/files/pos/S1.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test-nsc/files/pos/S1.scala')
-rwxr-xr-xtest-nsc/files/pos/S1.scala13
1 files changed, 13 insertions, 0 deletions
diff --git a/test-nsc/files/pos/S1.scala b/test-nsc/files/pos/S1.scala
new file mode 100755
index 0000000000..68706e3dd3
--- /dev/null
+++ b/test-nsc/files/pos/S1.scala
@@ -0,0 +1,13 @@
+/* This is probably no bug, I just don't understand why
+** type inference does not find the right instantiation of foo.
+** Currently it reports:
+**
+** S1.scala:12: inferred type arguments [S1] do not conform to
+** method foo's type parameter bounds [T <: S1.this.type]
+** foo(this);
+** ^
+*/
+class S1() {
+ def foo[T <: this.type](x: T) = x;
+ foo[this.type](this);
+}