aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Symbols.scala
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2015-04-02 15:37:12 +0200
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2015-04-02 15:37:12 +0200
commit17476c22aa69d05ebf7701f23891f65329d35da7 (patch)
tree3c457e16d50861acecbe10a9e09da3f87648bba1 /src/dotty/tools/dotc/core/Symbols.scala
parent2362081bbc80a4edbec954b07698a0729c334947 (diff)
downloaddotty-17476c22aa69d05ebf7701f23891f65329d35da7.tar.gz
dotty-17476c22aa69d05ebf7701f23891f65329d35da7.tar.bz2
dotty-17476c22aa69d05ebf7701f23891f65329d35da7.zip
Fix TreeTypeMap and mapSymbols to create a copy of decls for duplicated classes.
Without this fix the duplicated classes and the original ones share the same reference to a scope, instead of having each a separate one. @alexsikia this should fix your problems
Diffstat (limited to 'src/dotty/tools/dotc/core/Symbols.scala')
-rw-r--r--src/dotty/tools/dotc/core/Symbols.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/Symbols.scala b/src/dotty/tools/dotc/core/Symbols.scala
index a27ce3d6a..3b8d226be 100644
--- a/src/dotty/tools/dotc/core/Symbols.scala
+++ b/src/dotty/tools/dotc/core/Symbols.scala
@@ -292,7 +292,7 @@ trait Symbols { this: Context =>
val oinfo = original.info match {
case ClassInfo(pre, _, parents, decls, selfInfo) =>
assert(original.isClass)
- ClassInfo(pre, copy.asClass, parents, decls, selfInfo)
+ ClassInfo(pre, copy.asClass, parents, decls.cloneScope, selfInfo)
case oinfo => oinfo
}
copy.denot = odenot.copySymDenotation(