summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authormihaylov <mihaylov@epfl.ch>2004-06-02 12:29:38 +0000
committermihaylov <mihaylov@epfl.ch>2004-06-02 12:29:38 +0000
commit0cf6ebc16d4baa0c8c50f1d05d536def6403aaad (patch)
tree9c759fceb66f326744a64c68d4aa2bdf2fb10afb /sources
parent18d6311803a8755273e8bfc603fa8b6080c647da (diff)
downloadscala-0cf6ebc16d4baa0c8c50f1d05d536def6403aaad.tar.gz
scala-0cf6ebc16d4baa0c8c50f1d05d536def6403aaad.tar.bz2
scala-0cf6ebc16d4baa0c8c50f1d05d536def6403aaad.zip
- Reintroduced the latest fix with stricter app...
- Reintroduced the latest fix with stricter applicability condition
Diffstat (limited to 'sources')
-rw-r--r--sources/scala/tools/scalac/typechecker/Analyzer.scala14
1 files changed, 11 insertions, 3 deletions
diff --git a/sources/scala/tools/scalac/typechecker/Analyzer.scala b/sources/scala/tools/scalac/typechecker/Analyzer.scala
index 9b9b88b418..d1e381b2d7 100644
--- a/sources/scala/tools/scalac/typechecker/Analyzer.scala
+++ b/sources/scala/tools/scalac/typechecker/Analyzer.scala
@@ -942,9 +942,17 @@ class Analyzer(global: scalac_Global, descr: AnalyzerPhase) extends Transformer(
val info = new LazyTreeType(tree);
clazz.setInfo(info);
modul.setInfo(info);
- //if (modul.linkedClass() != null) {
- // modul.linkedClass().setInfo(Type.ErrorType);
- //}
+ val lclass = modul.linkedClass();
+ // Taken from SymbolLoader.initializeRoot()
+ if (lclass != null) {
+ if (lclass.rawInfo().isInstanceOf[SymbolLoader] &&
+ !lclass.rawInfo().isInstanceOf[SourceCompleter]) {
+ lclass.setInfo(Type.ErrorType);
+ //val allConstr = lclass.allConstructors();
+ //allConstr.setInfo(Type.ErrorType);
+ //allConstr.flags = allConstr.flags | Modifiers.PRIVATE;
+ }
+ }
}
enterSym(tree, modul)