Skip to content

Commit 48aac8e

Browse files
committed
Make caseClassSynthesized idempotent
1 parent c0d0d5d commit 48aac8e

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

compiler/src/dotty/tools/dotc/core/Definitions.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1210,7 +1210,7 @@ class Definitions {
12101210
val AbstractFunctionClassPerRun: PerRun[Array[Symbol]] = new PerRun(AbstractFunctionType.map(_.symbol.asClass))
12111211
def AbstractFunctionClass(n: Int)(using Context): Symbol = AbstractFunctionClassPerRun()(using ctx)(n)
12121212

1213-
@tu lazy val caseClassSynthesized: Set[Symbol] = Set(
1213+
@tu lazy val caseClassSynthesized: List[Symbol] = List(
12141214
Any_hashCode, Any_equals, Any_toString, Product_canEqual, Product_productArity,
12151215
Product_productPrefix, Product_productElement, Product_productElementName)
12161216

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ class SyntheticMembers(thisPhase: DenotTransformer) {
6363
private def initSymbols(using Context) =
6464
if (myValueSymbols.isEmpty) {
6565
myValueSymbols = List(defn.Any_hashCode, defn.Any_equals)
66-
myCaseSymbols = defn.caseClassSynthesized.toList
66+
myCaseSymbols = defn.caseClassSynthesized
6767
myCaseModuleSymbols = myCaseSymbols.filter(_ ne defn.Any_equals)
6868
myEnumValueSymbols = List(defn.Product_productPrefix)
6969
myNonJavaEnumValueSymbols = myEnumValueSymbols :+ defn.Any_toString

0 commit comments

Comments
 (0)