aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dotty/tools/dotc/core/TypeComparer.scala1
-rw-r--r--src/dotty/tools/dotc/core/Types.scala1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/core/TypeComparer.scala b/src/dotty/tools/dotc/core/TypeComparer.scala
index 47e554968..18e38eacd 100644
--- a/src/dotty/tools/dotc/core/TypeComparer.scala
+++ b/src/dotty/tools/dotc/core/TypeComparer.scala
@@ -233,6 +233,7 @@ class TypeComparer(initctx: Context) extends DotClass {
ctx.erasedTypes
|| sym1.isStaticOwner
|| isSubType(pre1, pre2)
+ || pre1.isInstanceOf[ThisType] && pre2.isInstanceOf[ThisType]
)
else (
tp1.name == tp2.name && isSubType(pre1, pre2)
diff --git a/src/dotty/tools/dotc/core/Types.scala b/src/dotty/tools/dotc/core/Types.scala
index e1e3e9c97..36513a2bc 100644
--- a/src/dotty/tools/dotc/core/Types.scala
+++ b/src/dotty/tools/dotc/core/Types.scala
@@ -1223,6 +1223,7 @@ object Types {
final class CachedTermRef(prefix: Type, name: TermName) extends TermRef(prefix, name) {
assert(prefix ne NoPrefix)
}
+
final class CachedTypeRef(prefix: Type, name: TypeName) extends TypeRef(prefix, name) {
assert(prefix ne NoPrefix)
}