Skip to content

Commit f41f4b8

Browse files
committed
Change more tests to new extended with syntax
1 parent b12463b commit f41f4b8

18 files changed

+25
-27
lines changed

compiler/src/dotty/tools/dotc/parsing/Parsers.scala

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3546,15 +3546,13 @@ object Parsers {
35463546
(EmptyValDef, Nil)
35473547
Template(constr, parents, derived, self, stats)
35483548

3549-
def templateBody(): (ValDef, List[Tree]) = {
3549+
def templateBody(): (ValDef, List[Tree]) =
35503550
val r = inDefScopeBraces { templateStatSeq() }
3551-
if (in.token == WITH) {
3551+
if in.token == WITH then
35523552
syntaxError(EarlyDefinitionsNotSupported())
35533553
in.nextToken()
35543554
template(emptyConstructor)
3555-
}
35563555
r
3557-
}
35583556

35593557
/* -------- STATSEQS ------------------------------------------- */
35603558

docs/docs/reference/contextual/relationship-implicits.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ Anonymous given instances that define extension methods
6565
get their name from the name of the first extension method and the toplevel type
6666
constructor of its first parameter. For example, the given instance
6767
```scala
68-
given extension [T] (xs: List[T]) {
68+
given [T] (xs: List[T]) extended with {
6969
def second = ...
7070
}
7171
```

tests/neg/extension-methods.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ object Test {
1010
"".l2 // error
1111
1.l1 // error
1212

13-
given extension [T](xs: List[T]) {
13+
given [T](xs: List[T]) extended with {
1414
def (x: Int) f1: T = ??? // error: No extension method allowed here, since collective parameters are given
1515
def f2[T]: T = ??? // error: T is already defined as type T
1616
def f3(xs: List[T]) = ??? // error: xs is already defined as value xs

tests/neg/i5455.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ object Library {
1111
def toInt(n: Nat): Int = n
1212

1313
}
14-
given extension (x: Nat)
14+
given (x: Nat) extended with
1515
def * (y: Nat): Nat = x * y
1616
def toInt: Int = x
1717
}

tests/neg/i6900.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
object Test2 {
22

33
// Works with extension method
4-
given extension [A](a: A) with
4+
given [A](a: A) extended with
55
def foo[C]: C => A = _ => a // error: extension method cannot have type parameters
66

77
1.foo.foo

tests/pos/i6900.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ object Test1 {
2121
object Test2 {
2222

2323
// Works with extension method
24-
given extension [A, C](a: A) with
24+
given [A, C](a: A) extended with
2525
def foo: C => A = _ => a
2626

2727
1.foo.foo

tests/pos/i7084.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ object Test {
22

33
type Foo
44

5-
given extension (y: Any) {
5+
given (y: Any) extended with {
66
def g(given Foo): Any = ???
77
}
88

tests/pos/i7087.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ type F[T] = T match {
66
case G[a] => String
77
}
88

9-
given extension [T](tup: T) {
9+
given [T](tup: T) extended with {
1010
def g(given Foo: F[T]) = ???
1111
}
1212

tests/pos/implicit-scope.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ object A {
99
type FlagSet = opaques.FlagSet
1010
def FlagSet(bits: Long): FlagSet = opaques.FlagSet(bits)
1111

12-
given extension (xs: FlagSet) {
12+
given (xs: FlagSet) extended with {
1313
def bits: Long = opaques.toBits(xs)
1414
def | (ys: FlagSet): FlagSet = FlagSet(xs.bits | ys.bits)
1515
}

tests/pos/matrixOps.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ object Test with
33
type Matrix = Array[Array[Double]]
44
type Vector = Array[Double]
55

6-
given extension (m: Matrix)
6+
given (m: Matrix) extended with
77
def nRows = m.length
88
def nCols = m(0).length
99
def row(i: Int): Vector = m(i)

0 commit comments

Comments
 (0)