File tree Expand file tree Collapse file tree 2 files changed +10
-2
lines changed
src/dotty/tools/dotc/core/pickling Expand file tree Collapse file tree 2 files changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -32,6 +32,14 @@ class NameBuffer extends TastyBuffer(100000) {
32
32
33
33
def nameIndex (str : String ): NameRef = nameIndex(str.toTermName)
34
34
35
+ def fullNameIndex (name : Name ): NameRef = {
36
+ val pos = name.lastIndexOf('.' )
37
+ if (pos > 0 )
38
+ nameIndex(Qualified (fullNameIndex(name.take(pos)), nameIndex(name.drop(pos + 1 ))))
39
+ else
40
+ nameIndex(name)
41
+ }
42
+
35
43
private def withLength (op : => Unit ): Unit = {
36
44
val lengthAddr = currentAddr
37
45
writeByte(0 )
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ class TreePickler(pickler: TastyPickler) {
14
14
val buf = new TreeBuffer
15
15
pickler.newSection(" ASTs" , buf)
16
16
import buf ._
17
- import pickler .nameBuffer .nameIndex
17
+ import pickler .nameBuffer .{ nameIndex , fullNameIndex }
18
18
import ast .tpd ._
19
19
20
20
private val symRefs = new mutable.HashMap [Symbol , Addr ]
@@ -61,7 +61,7 @@ class TreePickler(pickler: TastyPickler) {
61
61
private def pickleName (name : TastyName ) = writeNat(nameIndex(name).index)
62
62
private def pickleNameAndSig (name : Name , sig : Signature ) = {
63
63
val Signature (params, result) = sig
64
- pickleName(TastyName .Signed (nameIndex(name), params.map(nameIndex ), nameIndex (result)))
64
+ pickleName(TastyName .Signed (nameIndex(name), params.map(fullNameIndex ), fullNameIndex (result)))
65
65
}
66
66
67
67
private def pickleSymRef (sym : Symbol )(implicit ctx : Context ) = symRefs.get(sym) match {
You can’t perform that action at this time.
0 commit comments