Vlad Ureche
Vlad Ureche
Why don't we get a warning that `MyNumeric[T]` should be miniboxed? ``` $ cat gh-bug-229.scala package streams trait MyNumeric[T] object LongIsMyNumeric extends MyNumeric[Long] object IntIsMyNumeric extends MyNumeric[Int] $ mb-scalac gh-bug-229.scala...
Right now it's going through boxing: ``` t.as[Int] => conversion(minibox2box(..., t)).as[Int] ``` the `conversion` and `as` should be eliminated and the code should be: ``` t.as[Int] => minibox2int(t) ``` https://github.com/miniboxing/miniboxing-plugin/blob/wip/components/runtime/src/scala/MbReflection.scala#L132-L138
Found while minimizing #181. ``` scala $ cat gh-bug-182.scala package miniboxing.tests.bug182 import annotation.tailrec sealed abstract class ConsList[@miniboxed A] { import ConsList._ def dropWhile(): ConsList[A] = this match { case Cons(h,...
The flag was introduced in https://github.com/miniboxing/miniboxing-plugin/commit/3feb8328e3dab20d05c0cb233e184292c804b3fd but still has some rough edges: Here goes: - [x] make it work with 2.10 + make it default - [ ] split the...
Can you do it? Is it rewired?
Suggested by @nicolasstucki, after trying to debug miniboxed code => most positions are lost, so it's really hard to keep track of what's going on...
``` scala $ cat gh-bug-160.scala package miniboxing.tests.compile.bug160 class C[@miniboxed T] { private def bar() = 4 def foo = { // useless error message: new C[String].bar() } } $ mb-scalac...
``` $ cat gh-bug-H.scala package miniboxing.tests.compile.bugH abstract class Color[@miniboxed Repr: Manifest] case class ColorEntry[@miniboxed T](r: T, g: T, b: T, a: T) abstract class FourColor[@miniboxed T: Manifest] extends Color[ColorEntry[T]] $...
Would also be useful for https://github.com/lampepfl/dotty. Thanks to @c9r for the idea!