summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschinz <schinz@epfl.ch>2003-03-20 08:49:02 +0000
committerschinz <schinz@epfl.ch>2003-03-20 08:49:02 +0000
commit73cf6d4754accfa50057d77f170b81ff7a906e6d (patch)
tree3f1efc242de3a6a43bc99ab5893447b10ab5aac3
parentb68d6aba80bea8ab549ee51c3456974ad9d6f2ad (diff)
downloadscala-73cf6d4754accfa50057d77f170b81ff7a906e6d.tar.gz
scala-73cf6d4754accfa50057d77f170b81ff7a906e6d.tar.bz2
scala-73cf6d4754accfa50057d77f170b81ff7a906e6d.zip
- bug fix: always insert new symbols in their o...
- bug fix: always insert new symbols in their owner's scope removed - obsolete code
-rw-r--r--sources/scalac/transformer/AddInterfaces.java16
1 files changed, 2 insertions, 14 deletions
diff --git a/sources/scalac/transformer/AddInterfaces.java b/sources/scalac/transformer/AddInterfaces.java
index 8afce88fcf..f6d604b597 100644
--- a/sources/scalac/transformer/AddInterfaces.java
+++ b/sources/scalac/transformer/AddInterfaces.java
@@ -171,20 +171,7 @@ class AddInterfaces extends SubstTransformer {
if (!needInterface(ifaceSym))
return ifaceSym;
else {
- if (!ifaceToClass.containsKey(ifaceSym)) {
- Symbol classSym;
-
- Name ifaceName = ifaceSym.primaryConstructorClass().fullName();
- classSym = global.definitions.getClass(className(ifaceName));
- if (ifaceSym.isPrimaryConstructor())
- classSym = classSym.constructor();
-
- assert classSym != Symbol.NONE : ifaceSym;
-
- ifaceToClass.put(ifaceSym, classSym);
- classToInterface.put(classSym, ifaceSym);
- }
-
+ assert ifaceToClass.containsKey(ifaceSym);
return (Symbol)ifaceToClass.get(ifaceSym);
}
}
@@ -644,6 +631,7 @@ class AddInterfaces extends SubstTransformer {
Symbol classSym = cloneAndMaybeRenameSymbol(ifaceSym);
ifaceToClass.put(ifaceSym, classSym);
ifaceToClass.put(ifaceSym.constructor(), classSym.constructor());
+ ifaceSym.owner().members().enter(classSym);
}
public void traverse(Tree tree) {