diff options
author | Martin Odersky <odersky@gmail.com> | 2011-08-30 21:04:51 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2011-08-30 21:04:51 +0000 |
commit | d8add367dd9e432b53d98a33880bdf56a4505be1 (patch) | |
tree | 579437a1b376e8e5628556fa87c8d38cd903f92f /src/compiler/scala/reflect/internal/Types.scala | |
parent | 476e4816f831fcacbc0cb809cabbad726900a975 (diff) | |
download | scala-d8add367dd9e432b53d98a33880bdf56a4505be1.tar.gz scala-d8add367dd9e432b53d98a33880bdf56a4505be1.tar.bz2 scala-d8add367dd9e432b53d98a33880bdf56a4505be1.zip |
More fixes to reflection and reflective compiler.
Diffstat (limited to 'src/compiler/scala/reflect/internal/Types.scala')
-rw-r--r-- | src/compiler/scala/reflect/internal/Types.scala | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/scala/reflect/internal/Types.scala b/src/compiler/scala/reflect/internal/Types.scala index 5049b6bd90..ded4627e97 100644 --- a/src/compiler/scala/reflect/internal/Types.scala +++ b/src/compiler/scala/reflect/internal/Types.scala @@ -1909,7 +1909,8 @@ A type's typeSymbol should never be inspected directly. // @M: initialize (by sym.info call) needed (see test/files/pos/ticket0137.scala) @inline private def etaExpand: Type = { val tpars = sym.info.typeParams // must go through sym.info for typeParams to initialise symbol - typeFunAnon(tpars, copyTypeRef(this, pre, sym, tpars map (_.tpeHK))) // todo: also beta-reduce? + if (tpars.isEmpty) this + else typeFunAnon(tpars, copyTypeRef(this, pre, sym, tpars map (_.tpeHK))) // todo: also beta-reduce? } override def dealias: Type = |