File: t6891.scala

package info (click to toggle)
scala 2.11.12-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 62,924 kB
  • sloc: javascript: 28,808; java: 13,415; xml: 3,135; sh: 1,620; python: 756; makefile: 38; awk: 36; ansic: 6
file content (26 lines) | stat: -rw-r--r-- 791 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
object O {
  implicit class Foo[A](val value: String) extends AnyVal {
    def bippy() = {
      @annotation.tailrec def loop(x: A): Unit = loop(x)
      ()
    }

    def boppy() = {
      @annotation.tailrec def loop(x: value.type): Unit = loop(x)
      ()
    }

    def beppy[C](c: => C) = {
      () => c
      @annotation.tailrec def loop(x: value.type): Unit = loop(x)
        () => c
      ()
    }
  }
  // uncaught exception during compilation: Types$TypeError("type mismatch;
  //  found   : A(in method bippy$extension)
  //  required: A(in class Foo)") @ scala.tools.nsc.typechecker.Contexts$Context.issueCommon(Contexts.scala:396)
  // error: scala.reflect.internal.Types$TypeError: type mismatch;
  //  found   : A(in method bippy$extension)
  //  required: A(in class Foo)
}