summaryrefslogtreecommitdiff
path: root/test/files/pos/sammy_scope.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/pos/sammy_scope.scala')
-rw-r--r--test/files/pos/sammy_scope.scala8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/files/pos/sammy_scope.scala b/test/files/pos/sammy_scope.scala
new file mode 100644
index 0000000000..8f1fe7058e
--- /dev/null
+++ b/test/files/pos/sammy_scope.scala
@@ -0,0 +1,8 @@
+// test synthesizeSAMFunction: scope hygiene
+abstract class SamFun[T1, R] { self =>
+ def apply(v1: T1): R
+
+ // this should type check, as the apply ref is equivalent to self.apply
+ // it shouldn't resolve to the sam's apply that's synthesized (that wouldn't type check, hence the pos test)
+ def compose[A](g: SamFun[A, T1]): SamFun[A, R] = { x => apply(g(x)) }
+} \ No newline at end of file