diff --git a/tests/neg/i12754.scala b/tests/neg/i12754.scala new file mode 100644 index 000000000000..ee29f8f97885 --- /dev/null +++ b/tests/neg/i12754.scala @@ -0,0 +1,15 @@ +transparent inline def transform(inline a: Any): Any = inline a match { + case x: Byte => x + case x: Short => x + case x: Int => x + case x: Long => x + case x: Float => x + case x: Double => x + case _ => a +} + +inline def lt(inline a: Any, inline b: Double): Boolean = transform(a) < b // error + +def test = { + println(lt(0, 5)) +} diff --git a/tests/pos/i12754.scala b/tests/pos/i12754.scala new file mode 100644 index 000000000000..0c4c54bf6883 --- /dev/null +++ b/tests/pos/i12754.scala @@ -0,0 +1,13 @@ +transparent inline def transform(inline a: Any): Any = inline a match { + case x: Byte => x + case x: Short => x + case x: Int => x + case x: Long => x + case x: Float => x + case x: Double => x + case _ => a +} + +def test = { + println(transform(0) < 5) +}