diff options
author | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2014-12-04 09:22:29 +0100 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2014-12-16 13:15:03 +0100 |
commit | 89c2f12a7fad7a534faece88c370e1cca4ba0ccb (patch) | |
tree | 0bbcaf04a303746cece09a20c4d2152f80e52749 | |
parent | 9657586271a905ae8f7b258f1c61f2f628b54c4f (diff) | |
download | dotty-89c2f12a7fad7a534faece88c370e1cca4ba0ccb.tar.gz dotty-89c2f12a7fad7a534faece88c370e1cca4ba0ccb.tar.bz2 dotty-89c2f12a7fad7a534faece88c370e1cca4ba0ccb.zip |
Handle JavaSeqLiterals.
-rw-r--r-- | src/dotty/tools/backend/jvm/DottyBackendInterface.scala | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala index 7096d0991..c89e98b93 100644 --- a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala +++ b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala @@ -64,7 +64,7 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{ type Super = tpd.Super type Modifiers = tpd.Modifiers type Annotation = NonExistentTree - type ArrayValue = NonExistentTree + type ArrayValue = tpd.JavaSeqLiteral type ApplyDynamic = NonExistentTree type ModuleDef = NonExistentTree type LabelDef = tpd.DefDef @@ -750,8 +750,13 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{ def _2: Name = field.mix } object ArrayValue extends ArrayValueDeconstructor { - def _1: Tree = ??? - def _2: List[Tree] = ??? + def _1: Type = field.tpe match { + case JavaArrayType(elem) => elem + case _ => + ctx.error(s"JavaSeqArray with type ${field.tpe} reached backend: $field", field.pos) + ErrorType + } + def _2: List[Tree] = field.elems } object Match extends MatchDeconstructor { def _1: Tree = field.selector |