Skip to content

Commit 95966d8

Browse files
hamzaremmalWojciechMazur
authored andcommitted
fix: do not transform Ident to This in PostTyper anymore
[Cherry-picked d03af58]
1 parent 60ff423 commit 95966d8

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

compiler/src/dotty/tools/dotc/transform/PostTyper.scala

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -391,11 +391,7 @@ class PostTyper extends MacroTransform with InfoTransformer { thisPhase =>
391391
checkNotPackage(tree)
392392
else
393393
registerNeedsInlining(tree)
394-
val tree1 = checkUsableAsValue(tree)
395-
tree1.tpe match {
396-
case tpe: ThisType => This(tpe.cls).withSpan(tree.span)
397-
case _ => tree1
398-
}
394+
checkUsableAsValue(tree)
399395
case tree @ Select(qual, name) =>
400396
registerNeedsInlining(tree)
401397
if name.isTypeName then

tests/run/i23875.check

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
true
2+
false
3+
false

tests/run/i23875.scala

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
object Foo {
2+
override def equals(that : Any) = that match {
3+
case _: this.type => true
4+
case _ => false
5+
}
6+
}
7+
8+
@main def Test =
9+
println(Foo.equals(Foo))
10+
println(Foo.equals(new AnyRef {}))
11+
println(Foo.equals(0))

0 commit comments

Comments
 (0)