File tree 1 file changed +19
-7
lines changed
tests/explicit-nulls/unsafe-common/unsafe-java-call 1 file changed +19
-7
lines changed Original file line number Diff line number Diff line change 1
- import scala . language . unsafeNulls
1
+ // Check Java calls have been cast to non-nullable.
2
2
3
3
val j : J = new J
4
4
5
- val s1 : String = j.f1()
5
+ val s1 : String = j.f1() // error
6
+
7
+ val s1n : String | Null = j.f1()
6
8
7
9
val i1 : Int = j.f2()
8
10
9
- val s2 : String = j.g1[String ]()
11
+ val s2 : String = j.g1[String ]() // error
12
+
13
+ val s2n : String | Null = j.g1[String ]()
14
+
15
+ val s3 : String = j.g1[String | Null ]() // error
10
16
11
- val i2 : Int = j.g1[Int ]()
17
+ val s3n : String | Null = j.g1[String | Null ]()
18
+
19
+ val i2 : Int = j.g1[Int ]() // error
12
20
13
21
val a1 : Any = j.g1[Any ]()
14
22
15
- val ar1 : AnyRef = j.g1[AnyRef ]()
23
+ val ar1 : AnyRef = j.g1[AnyRef ]() // error
16
24
17
25
val n1 : Null = j.g1[Null ]()
18
26
19
- val ar2 : AnyRef = j.g1[Null ]()
27
+ val ar2 : AnyRef = j.g1[Null ]() // error
28
+
29
+ def clo1 [T ]: T = j.g1[T ]() // error
30
+
31
+ def clo2 [T <: AnyRef ]: T = j.g1[T | Null ]() // error
20
32
21
- def clo [ T ]: T = j.g1[T ]()
33
+ def clo3 [ T >: Null <: AnyRef | Null ]: T = j.g1[T ]()
You can’t perform that action at this time.
0 commit comments