summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-11-01 09:40:22 +0000
committerMartin Odersky <odersky@gmail.com>2006-11-01 09:40:22 +0000
commitc0d02903797c4c83aaeb17079c3bdbdf33ebfc42 (patch)
tree1386d0c941e3bbb059f8d88d1134c63b54cb6896 /src
parent68c6e531f47da8e02450ba79de1907288d18bcea (diff)
downloadscala-c0d02903797c4c83aaeb17079c3bdbdf33ebfc42.tar.gz
scala-c0d02903797c4c83aaeb17079c3bdbdf33ebfc42.tar.bz2
scala-c0d02903797c4c83aaeb17079c3bdbdf33ebfc42.zip
fixed bug762
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/symtab/Types.scala4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/Types.scala b/src/compiler/scala/tools/nsc/symtab/Types.scala
index 58d86fed69..c7a5654dc0 100644
--- a/src/compiler/scala/tools/nsc/symtab/Types.scala
+++ b/src/compiler/scala/tools/nsc/symtab/Types.scala
@@ -1957,11 +1957,11 @@ trait Types requires SymbolTable {
* than member <code>sym2</code> of <code>tp2</code>?
*/
private def specializesSym(tp1: Type, sym1: Symbol, tp2: Type, sym2: Symbol): boolean = {
- //System.out.println("specializes "+tp1+"."+sym1+" "+tp2+"."+sym2)//DEBUG
val info1 = tp1.memberInfo(sym1)
val info2 = tp2.memberInfo(sym2).substThis(tp2.symbol, tp1)
+ //System.out.println("specializes "+tp1+"."+sym1+":"+info1+sym1.locationString+" AND "+tp2+"."+sym2+":"+info2)//DEBUG
sym2.isTerm && (info1 <:< info2) ||
- sym2.isAbstractType && info2.bounds.containsType(info1) ||
+ sym2.isAbstractType && info2.bounds.containsType(tp1.memberType(sym1)) ||
sym2.isAliasType && tp2.memberType(sym2).substThis(tp2.symbol, tp1) =:= tp1.memberType(sym1)
}