summaryrefslogtreecommitdiff
path: root/sources/scalac/transformer/Erasure.java
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scalac/transformer/Erasure.java')
-rw-r--r--sources/scalac/transformer/Erasure.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/sources/scalac/transformer/Erasure.java b/sources/scalac/transformer/Erasure.java
index acb14659cb..7d7a4c2659 100644
--- a/sources/scalac/transformer/Erasure.java
+++ b/sources/scalac/transformer/Erasure.java
@@ -26,6 +26,7 @@ import scalac.ast.Tree.AliasTypeDef;
import scalac.ast.Tree.ValDef;
import scalac.ast.TreeList;
import scalac.ast.GenTransformer;
+import scalac.atree.AConstant;
import scalac.symtab.Definitions;
import scalac.symtab.Kinds;
import scalac.symtab.Type;
@@ -221,6 +222,9 @@ public class Erasure extends GenTransformer implements Modifiers {
if (symbol == definitions.ZERO) return gen.mkNullLit(tree.pos);
return gen.Ident(tree.pos, symbol);
+ case Literal(AConstant.ZERO):
+ return gen.mkNullLit(tree.pos);
+
case Block(_):
case If(_, _, _):
case Switch(_, _, _, _):
@@ -276,9 +280,6 @@ public class Erasure extends GenTransformer implements Modifiers {
Tree value = transform(gen.mkDefaultValue(tree.pos, pt), pt);
return gen.mkBlock(new Tree[] {transform(tree), value});
- case Typed(Tree expr, _): // !!!
- return transform(expr, pt);
-
case LabelDef(_, _, _):
case Assign(_, _):
case New(_):