summaryrefslogtreecommitdiff
path: root/sources/scalac/typechecker/Analyzer.java
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-01-26 14:50:37 +0000
committerpaltherr <paltherr@epfl.ch>2004-01-26 14:50:37 +0000
commit364a11eaeec22c8385391114de81271613d58c82 (patch)
tree1231f45ee8fed8c4fb4d6e974c170867180f46ed /sources/scalac/typechecker/Analyzer.java
parent30d9763761a0daad22e7f1fc84b762079d966c17 (diff)
downloadscala-364a11eaeec22c8385391114de81271613d58c82.tar.gz
scala-364a11eaeec22c8385391114de81271613d58c82.tar.bz2
scala-364a11eaeec22c8385391114de81271613d58c82.zip
- Added automatic rebinding and unaliasing in T...
- Added automatic rebinding and unaliasing in TypeRef creation
Diffstat (limited to 'sources/scalac/typechecker/Analyzer.java')
-rw-r--r--sources/scalac/typechecker/Analyzer.java9
1 files changed, 3 insertions, 6 deletions
diff --git a/sources/scalac/typechecker/Analyzer.java b/sources/scalac/typechecker/Analyzer.java
index 174dd6269f..9c7b5fbaf0 100644
--- a/sources/scalac/typechecker/Analyzer.java
+++ b/sources/scalac/typechecker/Analyzer.java
@@ -1004,7 +1004,7 @@ public class Analyzer extends Transformer implements Modifiers, Kinds {
Type constrtype = makeMethodType(
tparamSyms,
vparamSyms,
- Type.TypeRef(sym.owner().thisType(), sym, Symbol.type(tparamSyms)));
+ Type.typeRef(sym.owner().thisType(), sym, Symbol.type(tparamSyms)));
//System.out.println("set info " + sym.constructor() + " to " + constrtype + " was " + sym.constructor().rawInfo());//DEBUG
sym.primaryConstructor().setInfo(constrtype);
// necessary so that we can access tparams
@@ -1089,13 +1089,10 @@ public class Analyzer extends Transformer implements Modifiers, Kinds {
case AliasTypeDef(int mods, Name name, AbsTypeDef[] tparams, Tree rhs):
pushContext(tree, sym.primaryConstructor(), new Scope(context.scope));
Symbol[] tparamSyms = enterParams(tparams);
- sym.primaryConstructor().setInfo(
- Type.PolyType(tparamSyms, sym.typeConstructor()));
- // necessary so that we can access tparams
- sym.primaryConstructor().flags |= INITIALIZED;
((AliasTypeDef) tree).rhs = rhs = transform(rhs, TYPEmode);
owntype = rhs.type;
-
+ sym.primaryConstructor().setInfo(
+ Type.PolyType(tparamSyms, owntype));
popContext();
break;