You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
These types are injected as parents of Tuple1,...,Tuple22, but are
eliminated again at erasure.
To support them properly before full dotty bootstrap we needed
a @`rewrite` annotation that erases the annotated method (unlike
`@forceInline`, which generates code).
i"The type $tp - ${tp.toString} of class ${tp.getClass} of tree $tree : ${tree.tpe} / ${tree.getClass} is illegal after erasure, phase = ${ctx.phase.prev}")
146
+
}
144
147
}
145
148
146
149
objectErasure {
@@ -376,7 +379,7 @@ object Erasure {
376
379
* on selections `e.m`, where `OT` is the type of the owner of `m` and `ET`
377
380
* is the erased type of the selection's original qualifier expression.
378
381
*
379
-
* e.m1 -> e.m2 if `m1` is a member of Any or AnyVal and `m2` is
382
+
* e.m1 -> e.m2 if `m1` is a member of a class that erases to object and `m2` is
380
383
* the same-named member in Object.
381
384
* e.m -> box(e).m if `e` is primitive and `m` is a member or a reference class
382
385
* or `e` has an erased value class type.
@@ -396,7 +399,7 @@ object Erasure {
396
399
397
400
defmapOwner(sym: Symbol):Symbol= {
398
401
defrecur(owner: Symbol):Symbol=
399
-
if ((owner eq defn.AnyClass) ||(owner eq defn.AnyValClass)) {
0 commit comments