File tree Expand file tree Collapse file tree 4 files changed +20
-1
lines changed
test/dotty/tools/dotc/reporting Expand file tree Collapse file tree 4 files changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -2382,7 +2382,7 @@ object Parsers {
23822382 stats +++= tmplDef(in.offset, defAnnotsMods(modifierTokens))
23832383 else if (! isStatSep) {
23842384 if (in.token == CASE )
2385- syntaxErrorOrIncomplete(" only `case class` or `case object` allowed " )
2385+ syntaxErrorOrIncomplete(OnlyCaseClassOrCaseObjectAllowed () )
23862386 else
23872387 syntaxErrorOrIncomplete(" expected class or object definition" )
23882388 if (mustStartStat) // do parse all definitions even if they are probably local (i.e. a "}" has been forgotten)
Original file line number Diff line number Diff line change @@ -86,6 +86,7 @@ public enum ErrorMessageID {
8686 ValueClassesMayNotWrapItselfID ,
8787 ValueClassParameterMayNotBeAVarID ,
8888 ValueClassNeedsExactlyOneValParamID ,
89+ OnlyCaseClassOrCaseObjectAllowedID ,
8990 ;
9091
9192 public int errorNumber () {
Original file line number Diff line number Diff line change @@ -1566,4 +1566,11 @@ object messages {
15661566 val explanation = " "
15671567 }
15681568
1569+ case class OnlyCaseClassOrCaseObjectAllowed ()(implicit ctx : Context )
1570+ extends Message (OnlyCaseClassOrCaseObjectAllowedID ) {
1571+ val msg = " only `case class` or `case object` allowed"
1572+ val kind = " Syntax"
1573+ val explanation = " "
1574+ }
1575+
15691576}
Original file line number Diff line number Diff line change @@ -781,4 +781,15 @@ class ErrorMessagesTests extends ErrorMessagesTest {
781781 assertEquals(" class MyValue" , valueClass.show)
782782 }
783783
784+ @ Test def onlyCaseClassOrCaseObjectAllowed =
785+ checkMessagesAfter(" frontend" ) {
786+ """ case Foobar"""
787+ }
788+ .expect { (ictx, messages) =>
789+ implicit val ctx : Context = ictx
790+ assertMessageCount(1 , messages)
791+ val err :: Nil = messages
792+ assertEquals(err, OnlyCaseClassOrCaseObjectAllowed ())
793+ }
794+
784795}
You can’t perform that action at this time.
0 commit comments