diff options
author | Martin Odersky <odersky@gmail.com> | 2006-11-01 09:40:22 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2006-11-01 09:40:22 +0000 |
commit | c0d02903797c4c83aaeb17079c3bdbdf33ebfc42 (patch) | |
tree | 1386d0c941e3bbb059f8d88d1134c63b54cb6896 /src | |
parent | 68c6e531f47da8e02450ba79de1907288d18bcea (diff) | |
download | scala-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.scala | 4 |
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) } |