File tree 3 files changed +6
-8
lines changed
test/dotty/tools/dotc/reporting
3 files changed +6
-8
lines changed Original file line number Diff line number Diff line change @@ -1917,10 +1917,9 @@ object messages {
1917
1917
}
1918
1918
}
1919
1919
1920
- case class TraitRedefinedFinalMethodFromAnyRef ()(implicit ctx : Context ) extends Message (TraitRedefinedFinalMethodFromAnyRefID ) {
1920
+ case class TraitRedefinedFinalMethodFromAnyRef (method : Symbol )(implicit ctx : Context ) extends Message (TraitRedefinedFinalMethodFromAnyRefID ) {
1921
1921
val kind = " Syntax"
1922
- val msg = " Trait cannot redefine final method from class AnyRef"
1923
- val explanation = hl """ A method was defined in a trait trying to redefine a method declared in class AnyRef.
1924
- All classes inherit from AnyRef and should not redefine its methods """
1922
+ val msg = hl " Traits cannot redefine final $method from ${" class AnyRef" }. "
1923
+ val explanation = " "
1925
1924
}
1926
1925
}
Original file line number Diff line number Diff line change @@ -606,7 +606,7 @@ object RefChecks {
606
606
// override a concrete method in Object. The jvm, however, does not.
607
607
val overridden = decl.matchingDecl(defn.ObjectClass , defn.ObjectType )
608
608
if (overridden.is(Final ))
609
- ctx.error(TraitRedefinedFinalMethodFromAnyRef (), decl.pos)
609
+ ctx.error(TraitRedefinedFinalMethodFromAnyRef (overridden ), decl.pos)
610
610
}
611
611
}
612
612
Original file line number Diff line number Diff line change @@ -1185,9 +1185,8 @@ class ErrorMessagesTests extends ErrorMessagesTest {
1185
1185
implicit val ctx : Context = ictx
1186
1186
1187
1187
assertMessageCount(1 , messages)
1188
- val err :: Nil = messages
1189
-
1190
- assertEquals(TraitRedefinedFinalMethodFromAnyRef (), err)
1188
+ val TraitRedefinedFinalMethodFromAnyRef (method) = messages.head
1189
+ assertEquals(" method wait" , method.show)
1191
1190
}
1192
1191
1193
1192
}
You can’t perform that action at this time.
0 commit comments