summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-08-24 15:59:34 +0000
committerpaltherr <paltherr@epfl.ch>2004-08-24 15:59:34 +0000
commitaf125e6f83269e670aa017c416a663434be630ce (patch)
treed50f81e48a155a0b458bbc71a4be3a0b3f79dd34
parent3302ff7a20d6663802e36569227ab3ef7fa9709e (diff)
downloadscala-af125e6f83269e670aa017c416a663434be630ce.tar.gz
scala-af125e6f83269e670aa017c416a663434be630ce.tar.bz2
scala-af125e6f83269e670aa017c416a663434be630ce.zip
- Changed RefCheck.transformModule to enter sym...
- Changed RefCheck.transformModule to enter symbols only into classes
-rwxr-xr-xsources/scala/tools/scalac/typechecker/RefCheck.scala6
1 files changed, 4 insertions, 2 deletions
diff --git a/sources/scala/tools/scalac/typechecker/RefCheck.scala b/sources/scala/tools/scalac/typechecker/RefCheck.scala
index 4efdf48c51..557cb7653b 100755
--- a/sources/scala/tools/scalac/typechecker/RefCheck.scala
+++ b/sources/scala/tools/scalac/typechecker/RefCheck.scala
@@ -544,7 +544,8 @@ class RefCheck(globl: scalac.Global) extends Transformer(globl) {
val mvar = sym.owner().newFieldOrVariable(
tree.pos, PRIVATE | MUTABLE | SYNTHETIC, varname)
.setInfo(sym.getType());
- sym.owner().members().enterOrOverload(mvar);
+ if (sym.owner().isClassType())
+ sym.owner().members().enterOrOverload(mvar);
val vdef = gen.ValDef(mvar, gen.mkNullLit(tree.pos));
// { if (null == m$) m$ = new m$class; m$ }
@@ -574,7 +575,8 @@ class RefCheck(globl: scalac.Global) extends Transformer(globl) {
val m_eqdef: Tree = gen.DefDef(
m_eq,
gen.Assign(gen.mkLocalRef(tree.pos, mvar), gen.Ident(tree.pos, m_eqarg)));
- sym.owner().members().enterOrOverload(m_eq);
+ if (sym.owner().isClassType())
+ sym.owner().members().enterOrOverload(m_eq);
NewArray.Tree(cdef, vdef, ddef, m_eqdef)
}