diff options
author | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-08 09:01:16 -0700 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@epfl.ch> | 2012-06-08 09:01:16 -0700 |
commit | 8d0ba32a3fe2a7331e692868b469b95292b4eabc (patch) | |
tree | f15e3695f16fb4cf83e643a2b70aadb24874930d /test/files | |
parent | f42f76b4c6484521c70493207bf92732200e0411 (diff) | |
parent | dab1d0361ff74a2e4500255beba65389f44f34cc (diff) | |
download | scala-8d0ba32a3fe2a7331e692868b469b95292b4eabc.tar.gz scala-8d0ba32a3fe2a7331e692868b469b95292b4eabc.tar.bz2 scala-8d0ba32a3fe2a7331e692868b469b95292b4eabc.zip |
Merge pull request #679 from axel22/issue/5853
Fix SI-5853.
Diffstat (limited to 'test/files')
-rw-r--r-- | test/files/pos/t5853.scala | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/test/files/pos/t5853.scala b/test/files/pos/t5853.scala new file mode 100644 index 0000000000..21d80206ab --- /dev/null +++ b/test/files/pos/t5853.scala @@ -0,0 +1,55 @@ + + + + + + + +final class C(val x: Int) extends AnyVal { + def ppp[@specialized(Int) T](y: T) = () +} + + +class Foo { + def f = new C(1) ppp 2 +} + + +/* Original SI-5853 test-case. */ + +object Bippy { + implicit final class C(val x: Int) extends AnyVal { + def +++[@specialized T](y: T) = () + } + def f = 1 +++ 2 +} + + +/* Few more examples. */ + +final class C2(val x: Int) extends AnyVal { + def +++[@specialized(Int) T](y: T) = () +} + + +class Foo2 { + def f = new C2(1) +++ 2 +} + + +object Arrow { + implicit final class ArrowAssoc[A](val __leftOfArrow: A) extends AnyVal { + @inline def ->>[B](y: B): Tuple2[A, B] = Tuple2(__leftOfArrow, y) + } + + def foo = 1 ->> 2 +} + + +object SpecArrow { + implicit final class ArrowAssoc[A](val __leftOfArrow: A) extends AnyVal { + @inline def ->> [@specialized(Int) B](y: B): Tuple2[A, B] = Tuple2(__leftOfArrow, y) + } + + def foo = 1 ->> 2 +} |