diff options
author | Martin Odersky <odersky@gmail.com> | 2017-04-01 18:51:11 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2017-04-11 09:33:12 +0200 |
commit | 2bfb2ca70c4588de00c12feba79ef7c0d68361a5 (patch) | |
tree | 541a5cfc4fb13e6811fe2d85a84d2a3bea501a88 /compiler/src/dotty/tools/dotc/core/tasty | |
parent | e4780e574f9613346e6908f7947f40a58327e376 (diff) | |
download | dotty-2bfb2ca70c4588de00c12feba79ef7c0d68361a5.tar.gz dotty-2bfb2ca70c4588de00c12feba79ef7c0d68361a5.tar.bz2 dotty-2bfb2ca70c4588de00c12feba79ef7c0d68361a5.zip |
Introduce mangled method
Mangled is like toSimpleName, except that it keeps the term/type distinction.
Diffstat (limited to 'compiler/src/dotty/tools/dotc/core/tasty')
-rw-r--r-- | compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala b/compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala index 81519727c..7d08c958c 100644 --- a/compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala +++ b/compiler/src/dotty/tools/dotc/core/tasty/TreeUnpickler.scala @@ -416,7 +416,7 @@ class TreeUnpickler(reader: TastyReader, nameAtRef: NameRef => TermName, posUnpi val tag = readByte() val end = readEnd() var name: Name = readName() - val sname = name.toSimpleName + val mname = name.mangled if (tag == TYPEDEF || tag == TYPEPARAM) name = name.toTypeName skipParams() val ttag = nextUnsharedTag @@ -433,7 +433,7 @@ class TreeUnpickler(reader: TastyReader, nameAtRef: NameRef => TermName, posUnpi def adjustIfModule(completer: LazyType) = if (flags is Module) ctx.adjustModuleCompleter(completer, name) else completer val sym = - roots.find(root => (root.owner eq ctx.owner) && root.name.toSimpleName == sname && root.isType == name.isTypeName) match { + roots.find(root => (root.owner eq ctx.owner) && root.name.mangled == mname) match { case Some(rootd) => pickling.println(i"overwriting ${rootd.symbol} # ${rootd.hashCode}") rootd.name = name |