diff options
author | Paul Phillips <paulp@improving.org> | 2012-08-31 16:18:42 -0700 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2012-08-31 16:57:22 -0700 |
commit | 1d70cacca1864ae536e2e1d31d117d43dbc92c24 (patch) | |
tree | c12372ce5f667d1551ad42fc3094286034035f2d /src/compiler/scala/tools/nsc/ast/TreeGen.scala | |
parent | 7e4d8a42ff87224a1063449f93f2975bda0d7c01 (diff) | |
download | scala-1d70cacca1864ae536e2e1d31d117d43dbc92c24.tar.gz scala-1d70cacca1864ae536e2e1d31d117d43dbc92c24.tar.bz2 scala-1d70cacca1864ae536e2e1d31d117d43dbc92c24.zip |
Hardening specialization and others.
Cleaned up some logic which has become unreasonably
circuitous over time. Gave "mkSuperSelect" an accurate
name (it's now "mkSuperInitCall".) Put in better logging
for spotting OverloadedTypes which should not be.
Diffstat (limited to 'src/compiler/scala/tools/nsc/ast/TreeGen.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/ast/TreeGen.scala | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/TreeGen.scala b/src/compiler/scala/tools/nsc/ast/TreeGen.scala index 0e65bfca6d..3177ceefcd 100644 --- a/src/compiler/scala/tools/nsc/ast/TreeGen.scala +++ b/src/compiler/scala/tools/nsc/ast/TreeGen.scala @@ -54,7 +54,7 @@ abstract class TreeGen extends reflect.internal.TreeGen with TreeDSL { // wrap the given expression in a SoftReference so it can be gc-ed def mkSoftRef(expr: Tree): Tree = atPos(expr.pos) { val constructor = SoftReferenceClass.info.nonPrivateMember(nme.CONSTRUCTOR).suchThat(_.paramss.flatten.size == 1) - NewFromConstructor(constructor, List(expr)) + NewFromConstructor(constructor, expr) } // annotate the expression with @unchecked @@ -209,7 +209,7 @@ abstract class TreeGen extends reflect.internal.TreeGen with TreeDSL { else AppliedTypeTree(Ident(clazz), targs map TypeTree) )) } - def mkSuperSelect = Select(Super(This(tpnme.EMPTY), tpnme.EMPTY), nme.CONSTRUCTOR) + def mkSuperInitCall: Select = Select(Super(This(tpnme.EMPTY), tpnme.EMPTY), nme.CONSTRUCTOR) def wildcardStar(tree: Tree) = atPos(tree.pos) { Typed(tree, Ident(tpnme.WILDCARD_STAR)) } @@ -360,8 +360,8 @@ abstract class TreeGen extends reflect.internal.TreeGen with TreeDSL { */ def mkSynchronizedCheck(clazz: Symbol, cond: Tree, syncBody: List[Tree], stats: List[Tree]): Tree = mkSynchronizedCheck(mkAttributedThis(clazz), cond, syncBody, stats) - - def mkSynchronizedCheck(attrThis: Tree, cond: Tree, syncBody: List[Tree], stats: List[Tree]): Tree = + + def mkSynchronizedCheck(attrThis: Tree, cond: Tree, syncBody: List[Tree], stats: List[Tree]): Tree = Block(mkSynchronized( attrThis, If(cond, Block(syncBody: _*), EmptyTree)) :: |