diff options
author | Martin Odersky <odersky@gmail.com> | 2016-01-18 11:51:56 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-02-19 14:00:01 +0100 |
commit | d0b1ebcd41674dd78ec98a88ce4a60457c423da0 (patch) | |
tree | 019466d64cdcf79e72ec366de196dcd5691176cc /src/dotty/tools/dotc/core/unpickleScala2 | |
parent | f94c53caaa9265bc0252f8c435d1395901728601 (diff) | |
download | dotty-d0b1ebcd41674dd78ec98a88ce4a60457c423da0.tar.gz dotty-d0b1ebcd41674dd78ec98a88ce4a60457c423da0.tar.bz2 dotty-d0b1ebcd41674dd78ec98a88ce4a60457c423da0.zip |
Make type parameter reordering generally available.
Diffstat (limited to 'src/dotty/tools/dotc/core/unpickleScala2')
-rw-r--r-- | src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala b/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala index b1b229768..7a13388ae 100644 --- a/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala +++ b/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala @@ -132,18 +132,10 @@ object Scala2Unpickler { } else { registerCompanionPair(scalacCompanion, denot.classSymbol) } - val declsTypeParams = denot.typeParams - val declsInRightOrder = - if (declsTypeParams.corresponds(tparams)(_.name == _.name)) decls - else { // create new scope with type parameters in right order - val decls1 = newScope - for (tparam <- tparams) decls1.enter(decls.lookup(tparam.name)) - for (sym <- decls) if (!declsTypeParams.contains(sym)) decls1.enter(sym) - decls1 - } - denot.info = ClassInfo( // final info - denot.owner.thisType, denot.classSymbol, parentRefs, declsInRightOrder, ost) + denot.info = ClassInfo( // final info, except possibly for typeparams ordering + denot.owner.thisType, denot.classSymbol, parentRefs, decls, ost) + denot.updateTypeParams(tparams) } } |