summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/typechecker/Namers.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-11-16 19:38:11 +0000
committerMartin Odersky <odersky@gmail.com>2006-11-16 19:38:11 +0000
commit837661837e2bdc4605e34617296267f2eba80208 (patch)
treea99cb8a367c1216c1058f3ab5b41deb9a03b26cb /src/compiler/scala/tools/nsc/typechecker/Namers.scala
parent2538bfa0587ba2c1f9c005fb6af3c67211397b8b (diff)
downloadscala-837661837e2bdc4605e34617296267f2eba80208.tar.gz
scala-837661837e2bdc4605e34617296267f2eba80208.tar.bz2
scala-837661837e2bdc4605e34617296267f2eba80208.zip
fixed bug 798
Diffstat (limited to 'src/compiler/scala/tools/nsc/typechecker/Namers.scala')
-rw-r--r--src/compiler/scala/tools/nsc/typechecker/Namers.scala5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/typechecker/Namers.scala b/src/compiler/scala/tools/nsc/typechecker/Namers.scala
index 142f737283..661238a387 100644
--- a/src/compiler/scala/tools/nsc/typechecker/Namers.scala
+++ b/src/compiler/scala/tools/nsc/typechecker/Namers.scala
@@ -335,7 +335,10 @@ trait Namers requires Analyzer {
if (settings.debug.value) log("defining " + sym);
val tp = typeSig(tree)
sym.setInfo(tp)
- //if (sym.isAliasType || sym.isAbstractType) typer.checkNonCyclic(sym)
+ if ((sym.isAliasType || sym.isAbstractType) && !(sym hasFlag PARAM) &&
+ !typer.checkNonCyclic(tree.pos, tp))
+ sym.setInfo(ErrorType) // this early test is there to avoid infinite baseTypes when
+ // adding setters and getters --> bug798
if (settings.debug.value) log("defined " + sym);
validate(sym)
}