summaryrefslogtreecommitdiff
path: root/sources/scalac
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2003-03-10 16:45:41 +0000
committerMartin Odersky <odersky@gmail.com>2003-03-10 16:45:41 +0000
commit9447d90bd740d23c2b0c7333a7afbf63e8364273 (patch)
tree7fefcc467cd6d864d9ef110671f3f25587bec35d /sources/scalac
parent7dcbfdfdf11d7e8350612869a28520328f48d49d (diff)
downloadscala-9447d90bd740d23c2b0c7333a7afbf63e8364273.tar.gz
scala-9447d90bd740d23c2b0c7333a7afbf63e8364273.tar.bz2
scala-9447d90bd740d23c2b0c7333a7afbf63e8364273.zip
*** empty log message ***
Diffstat (limited to 'sources/scalac')
-rw-r--r--sources/scalac/symtab/Type.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/sources/scalac/symtab/Type.java b/sources/scalac/symtab/Type.java
index 28b6b59a4b..bdfc109025 100644
--- a/sources/scalac/symtab/Type.java
+++ b/sources/scalac/symtab/Type.java
@@ -1218,7 +1218,15 @@ public class Type implements Modifiers, Kinds, TypeTags {
case NoType:
return false;
- case ThisType(_):
+ case ThisType(Symbol sym1):
+ switch (this) {
+ case ThisType(Symbol sym):
+ return sym.isSubClass(sym1);
+ case SingleType(_, _):
+ return this.isSameAs(that);
+ }
+ break;
+
case SingleType(_, _):
switch (this) {
case ThisType(_):
@@ -1230,7 +1238,7 @@ public class Type implements Modifiers, Kinds, TypeTags {
case TypeRef(Type pre1, Symbol sym1, Type[] args1):
switch (this) {
case TypeRef(Type pre, Symbol sym, Type[] args):
- if (sym == sym1 && pre.isSameAs(pre1) && isSubArgs(args, args1))
+ if (sym == sym1 && pre.isSubType(pre1) && isSubArgs(args, args1))
return true;
break;
}