Skip to content

Commit a72309c

Browse files
committed
Remove error that cannot appear anymore
Now that we do not support the old syntax for splicing types it is not possible to get this error. The code is buggy and fails with another error that is not worth testing.
1 parent 3b6266d commit a72309c

File tree

5 files changed

+4
-28
lines changed

5 files changed

+4
-28
lines changed

compiler/src/dotty/tools/dotc/ast/Desugar.scala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1911,8 +1911,6 @@ object desugar {
19111911
new UntypedTreeTraverser {
19121912
def traverse(tree: untpd.Tree)(using Context): Unit = tree match {
19131913
case Splice(expr) => collect(expr)
1914-
case TypSplice(expr) =>
1915-
report.error(TypeSpliceInValPattern(expr), tree.srcPos)
19161914
case _ => traverseChildren(tree)
19171915
}
19181916
}.traverse(expr)

compiler/src/dotty/tools/dotc/reporting/ErrorMessageID.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ enum ErrorMessageID(val isActive: Boolean = true) extends java.lang.Enum[ErrorMe
1919
case TypeMismatchID // errorNumber: 7
2020
case NotAMemberID // errorNumber: 8
2121
case EarlyDefinitionsNotSupportedID // errorNumber: 9
22-
case TopLevelImplicitClassID extends ErrorMessageID(isActive = false) // errorNumber: 10
23-
case ImplicitCaseClassID // errorNumber: 11
22+
case TopLevelImplicitClassID extends ErrorMessageID(isActive = false) // errorNumber: 10
23+
case ImplicitCaseClassID // errorNumber: 11
2424
case ImplicitClassPrimaryConstructorArityID // errorNumber: 12
2525
case ObjectMayNotHaveSelfTypeID // errorNumber: 13
2626
case TupleTooLongID extends ErrorMessageID(isActive = false) // errorNumber: 14
@@ -97,7 +97,7 @@ enum ErrorMessageID(val isActive: Boolean = true) extends java.lang.Enum[ErrorMe
9797
case FunctionTypeNeedsNonEmptyParameterListID // errorNumber: 85
9898
case WrongNumberOfParametersID // errorNumber: 86
9999
case DuplicatePrivateProtectedQualifierID // errorNumber: 87
100-
case ExpectedStartOfTopLevelDefinitionID // errorNumber: 88
100+
case ExpectedStartOfTopLevelDefinitionID // errorNumber: 88
101101
case MissingReturnTypeWithReturnStatementID // errorNumber: 89
102102
case NoReturnFromInlineableID // errorNumber: 90
103103
case ReturnOutsideMethodDefinitionID // errorNumber: 91
@@ -164,7 +164,7 @@ enum ErrorMessageID(val isActive: Boolean = true) extends java.lang.Enum[ErrorMe
164164
case ExtensionCanOnlyHaveDefsID // errorNumber: 152
165165
case UnexpectedPatternForSummonFromID // errorNumber: 153
166166
case AnonymousInstanceCannotBeEmptyID // errorNumber: 154
167-
case TypeSpliceInValPatternID // errorNumber: 155
167+
case TypeSpliceInValPatternID extends ErrorMessageID(isActive = false) // errorNumber: 155
168168
case ModifierNotAllowedForDefinitionID // errorNumber: 156
169169
case CannotExtendJavaEnumID // errorNumber: 157
170170
case InvalidReferenceInImplicitNotFoundAnnotationID // errorNumber: 158

compiler/src/dotty/tools/dotc/reporting/messages.scala

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2447,15 +2447,6 @@ import transform.SymUtils._
24472447
|""".stripMargin
24482448
}
24492449

2450-
class TypeSpliceInValPattern(expr: untpd.Tree)(using Context)
2451-
extends SyntaxMsg(TypeSpliceInValPatternID) {
2452-
def msg = "Type splices cannot be used in val patterns. Consider using `match` instead."
2453-
def explain =
2454-
em"""|Type splice: `$$${expr.show}` cannot be used in a `val` pattern. Consider rewriting the `val` pattern
2455-
|as a `match` with a corresponding `case` to replace the `val`.
2456-
|""".stripMargin
2457-
}
2458-
24592450
class ModifierNotAllowedForDefinition(flag: Flag)(using Context)
24602451
extends SyntaxMsg(ModifierNotAllowedForDefinitionID) {
24612452
def msg = em"Modifier ${hl(flag.flagsString)} is not allowed for this definition"

tests/neg-macros/type-splice-in-val-pattern.check

Lines changed: 0 additions & 6 deletions
This file was deleted.

tests/neg-macros/type-splice-in-val-pattern.scala

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)