diff options
author | Martin Odersky <odersky@gmail.com> | 2003-03-10 16:45:41 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2003-03-10 16:45:41 +0000 |
commit | 9447d90bd740d23c2b0c7333a7afbf63e8364273 (patch) | |
tree | 7fefcc467cd6d864d9ef110671f3f25587bec35d /sources | |
parent | 7dcbfdfdf11d7e8350612869a28520328f48d49d (diff) | |
download | scala-9447d90bd740d23c2b0c7333a7afbf63e8364273.tar.gz scala-9447d90bd740d23c2b0c7333a7afbf63e8364273.tar.bz2 scala-9447d90bd740d23c2b0c7333a7afbf63e8364273.zip |
*** empty log message ***
Diffstat (limited to 'sources')
-rw-r--r-- | sources/scalac/symtab/Type.java | 12 |
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; } |