Skip to content

Commit 0b61009

Browse files
committed
Add import to tests
1 parent fd9afa8 commit 0b61009

21 files changed

+56
-5
lines changed

Diff for: scaladoc-testcases/src/tests/extensionParams.scala

+5
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,12 @@ extension [A <: List[Char]](using String)(using Unit)(a: A)(using Int)(using Num
5252
extension (using String)(using Unit)(a: Animal)(using Int)(using Number)
5353
def f11(b: Any)(c: Any): Any
5454
= ???
55+
56+
import scala.language.experimental.clauseInterleaving
57+
58+
extension (using String)(using Unit)(a: Animal)(using Int)(using Number)
5559
def f13(b: Any)[T](c: T): T
5660
= ???
5761
def f14[D](b: D)[T](c: T): T
5862
= ???
63+

Diff for: scaladoc-testcases/src/tests/methodsAndConstructors.scala

+3
Original file line numberDiff line numberDiff line change
@@ -60,5 +60,8 @@ class Methods:
6060
def withImplicitParam2(v: String)(implicit ab: Double, a: Int, b: String): String
6161
= ???
6262

63+
import scala.language.experimental.clauseInterleaving
64+
6365
def clauseInterleaving[T](x: T)[U](y: U)(using (T, U)): (T, U)
6466
= ???
67+

Diff for: tests/neg/interleaving-ab.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object Ab:
24
given String = ""
35
given Double = 0

Diff for: tests/neg/interleaving-params.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
class Params{
24
def bar[T](x: T)[T]: String = ??? // error
35
def zoo(x: Int)[T, U](x: U): T = ??? // error

Diff for: tests/neg/interleaving-signatureCollision.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object signatureCollision:
24
def f[T](x: T)[U](y: U) = (x,y)
35
def f[T](x: T, y: T) = (x,y) // error

Diff for: tests/neg/interleaving-typeApply.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object typeApply:
24

35
def f3[T <: Int](using DummyImplicit)[U <: String](): T => T = ???

Diff for: tests/neg/interleaving-unmatched.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object unmatched:
24
def f1[T (x: T)] = ??? // error
35
def f2(x: Any[)T] = ??? // error // error

Diff for: tests/neg/namedTypeParams.scala

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ object Test:
2727

2828
object TestInterleaving:
2929
import language.experimental.namedTypeArguments
30+
import language.experimental.clauseInterleaving
3031
def f2[X](using DummyImplicit)[Y](x: X, y: Y): Int = ???
3132

3233
f2[Y = String][X = Int](1, "") // error: Y is undefined

Diff for: tests/neg/overrides.scala

+10-4
Original file line numberDiff line numberDiff line change
@@ -39,30 +39,36 @@ package p2 { // all being in the same package compiles fine
3939
class A[T] {
4040

4141
def f(x: T)(y: T = x) = y
42-
def b[U <: T](x: Int)[V >: T](y: String) = false
4342

4443
def next: T = ???
4544

45+
import scala.language.experimental.clauseInterleaving
46+
47+
def b[U <: T](x: Int)[V >: T](y: String) = false
4648
}
4749

4850
class B extends A[Int] {
4951

5052
def f(x: Int)(y: Int) = y // error: needs `override' modifier
5153

5254
f(2)()
53-
override def b[T <: Int](x: Int)(y: String) = true // error
5455

5556
override def next(): Int = ??? // error: incompatible type
57+
58+
import scala.language.experimental.clauseInterleaving
59+
60+
override def b[T <: Int](x: Int)(y: String) = true // error
5661
}
5762

5863
class C extends A[String] {
5964

6065
override def f(x: String) = x // error
6166

62-
override def b[T <: String](x: Int)[U >: Int](y: String) = true // error: incompatible type
63-
6467
override def next: Int = ??? // error: incompatible type
6568

69+
import scala.language.experimental.clauseInterleaving
70+
71+
override def b[T <: String](x: Int)[U >: Int](y: String) = true // error: incompatible type
6672
}
6773

6874
class X {

Diff for: tests/pos/interleaving-ba.scala

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import scala.language.experimental.clauseInterleaving
12

23
object BA {
34
given String = ""

Diff for: tests/pos/interleaving-chainedParams.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object chainedParams{
24

35
trait Chain{

Diff for: tests/pos/interleaving-classless.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
def f1[T]()[U](x: T, y: U): (T, U) = (x, y)
24
def f2[T](x: T)[U](y: U): (T, U) = (x, y)
35
def f3[T, U](using DummyImplicit)[V](x: T): U = ???

Diff for: tests/pos/interleaving-functor.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object functorInterleaving:
24
//taken from https://dotty.epfl.ch/docs/reference/contextual/type-classes.html
35
//at version 3.1.1-RC1-bin-20210930-01f040b-NIGHTLY

Diff for: tests/pos/interleaving-newline.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object newline {
24
def multipleLines
35
[T]

Diff for: tests/pos/interleaving-overload.scala

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import scala.language.experimental.clauseInterleaving
12

23
class A{
34

Diff for: tests/pos/interleaving-params.scala

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
class Params{
24
type U
35
def foo[T](x: T)[U >: x.type <: T](using U)[L <: List[U]](l: L): L = ???

Diff for: tests/pos/interleaving-signatureCollision.scala

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import scala.language.experimental.clauseInterleaving
12
import scala.annotation.targetName
23

34
object signatureCollision:

Diff for: tests/pos/interleaving-typeApply.scala

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import scala.language.experimental.clauseInterleaving
2+
13
object typeApply:
24

35
def f0[T]: [U] => T => T = ???
@@ -10,6 +12,7 @@ object typeApply:
1012
def f7[T <: Int](using DummyImplicit)[U <: String]()[X <: Unit]: X => X = ???
1113

1214
@main def test = {
15+
import scala.language.experimental.namedTypeArguments
1316
f0[Int][String]
1417
f1[Int][String]
1518
f2[Int][String]()

Diff for: tests/pos/namedTypeParams.scala

+4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import language.experimental.namedTypeArguments
2+
23
object Test {
34

45
def f[X, Y](x: X, y: Y): Int = ???
@@ -7,7 +8,10 @@ object Test {
78
f[X = Int, Y = String](1, "")
89
f[X = Int](1, "")
910
f[Y = String](1, "")
11+
}
1012

13+
object TestInterleaving{
14+
import language.experimental.clauseInterleaving
1115
def f2[X](using DummyImplicit)[Y](x: X, y: Y): Int = ???
1216

1317
f2[X = Int][Y = String](1, "")

Diff for: tests/pos/overrides.scala

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,21 @@
11
class A[T] {
22

33
def f(x: T)(y: T = x) = y
4+
5+
import scala.language.experimental.clauseInterleaving
6+
47
def b[U <: T](x: Int)[V >: T](y: String) = false
58

69
}
7-
810
class B extends A[Int] {
911

1012
override def f(x: Int)(y: Int) = y
1113

1214
f(2)()
1315

16+
17+
import scala.language.experimental.clauseInterleaving
18+
1419
override def b[T <: Int](x: Int)[U >: Int](y: String) = true
1520

1621
}

Diff for: tests/run/interleaving.scala

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
object Test extends App {
2+
import scala.language.experimental.clauseInterleaving
23
trait Key { type Value }
34
trait DB {
45
def getOrElse(k: Key)[V >: k.Value](default: V): V // dependent type parameter

0 commit comments

Comments
 (0)