From 591e1518d7928fdd88ea7593b19e73182a8619a6 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Fri, 13 Mar 2015 17:34:50 +0100 Subject: New test for valueclasses Re-instantiated t2667.scala, which failed before because of issue #390. Also changed order of tests in isDerivedValueClass, to make more disriminating test come first. --- src/dotty/tools/dotc/transform/ValueClasses.scala | 2 +- tests/disabled/t2667.scala | 7 ------- tests/pos/t2667.scala | 7 +++++++ 3 files changed, 8 insertions(+), 8 deletions(-) delete mode 100644 tests/disabled/t2667.scala create mode 100644 tests/pos/t2667.scala diff --git a/src/dotty/tools/dotc/transform/ValueClasses.scala b/src/dotty/tools/dotc/transform/ValueClasses.scala index 2d44ed826..1527d46bb 100644 --- a/src/dotty/tools/dotc/transform/ValueClasses.scala +++ b/src/dotty/tools/dotc/transform/ValueClasses.scala @@ -13,8 +13,8 @@ object ValueClasses { def isDerivedValueClass(d: SymDenotation)(implicit ctx: Context) = d.isClass && - (d.symbol ne defn.AnyValClass) && d.derivesFrom(defn.AnyValClass) && + (d.symbol ne defn.AnyValClass) && !d.isPrimitiveValueClass def isMethodWithExtension(d: SymDenotation)(implicit ctx: Context) = diff --git a/tests/disabled/t2667.scala b/tests/disabled/t2667.scala deleted file mode 100644 index 600c1eaf0..000000000 --- a/tests/disabled/t2667.scala +++ /dev/null @@ -1,7 +0,0 @@ -// ExtensionMethods info transformer fails here for AnyVal$ -object A { - def foo(x: Int, y: Int*): Int = 45 - def foo[T](x: T*): Int = 55 - - val x: Unit = foo(23, 23f) -} diff --git a/tests/pos/t2667.scala b/tests/pos/t2667.scala new file mode 100644 index 000000000..600c1eaf0 --- /dev/null +++ b/tests/pos/t2667.scala @@ -0,0 +1,7 @@ +// ExtensionMethods info transformer fails here for AnyVal$ +object A { + def foo(x: Int, y: Int*): Int = 45 + def foo[T](x: T*): Int = 55 + + val x: Unit = foo(23, 23f) +} -- cgit v1.2.3