diff options
Diffstat (limited to 'src/compiler/scala/tools/nsc/ast/TreeGen.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/TreeGen.scala | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/TreeGen.scala b/src/compiler/scala/tools/nsc/ast/TreeGen.scala index 8be11e40b4..f639fc3c44 100644 --- a/src/compiler/scala/tools/nsc/ast/TreeGen.scala +++ b/src/compiler/scala/tools/nsc/ast/TreeGen.scala @@ -164,8 +164,9 @@ abstract class TreeGen { mkAttributedRef(definitions.NilModule) /** Builds a pair */ - def mkNewPair(left: Tree, right: Tree) = - New(Apply(mkAttributedRef(definitions.TupleClass(2)), List(left, right))) + def mkTuple(elems: List[Tree]): Tree = + if (elems.isEmpty) Literal(()) + else New(TypeTree(definitions.TupleClass(elems.length).tpe), List(elems)) def mkCached(cvar: Symbol, expr: Tree): Tree = { val cvarRef = if (cvar.owner.isClass) Select(This(cvar.owner), cvar) else Ident(cvar) |