mirror of
https://github.com/github/codeql.git
synced 2026-04-29 18:55:14 +02:00
Kotlin: Add tests for fake overrides
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
|
||||
public class A {
|
||||
void foo(OB<G1, G2>.B<E1, E2> z) {
|
||||
int foo = z.someFun();
|
||||
}
|
||||
}
|
||||
|
||||
class OB<S1, S2> extends OC<F1, F2> {
|
||||
class B<T1, T2> extends OC<F1, F2>.C<D1, D2, T1, T2> {
|
||||
}
|
||||
}
|
||||
|
||||
class OC<U1, U2> {
|
||||
class C<X1, X2, Y1, Y2> {
|
||||
int someFun() {
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class D1 {}
|
||||
class D2 {}
|
||||
|
||||
class E1 {}
|
||||
class E2 {}
|
||||
|
||||
class F1 {}
|
||||
class F2 {}
|
||||
|
||||
class G1 {}
|
||||
class G2 {}
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
| A.java:4:19:4:29 | someFun(...) | OC$C.class:0:0:0:0 | someFun |
|
||||
@@ -0,0 +1,4 @@
|
||||
import java
|
||||
|
||||
from MethodAccess c
|
||||
select c, c.getCallee()
|
||||
@@ -0,0 +1,32 @@
|
||||
|
||||
class A {
|
||||
fun foo(z: OB.B<E1, E2>) {
|
||||
val foo = z.someFun()
|
||||
}
|
||||
}
|
||||
|
||||
class OB<S1, S2>: OC<F1, F2>() {
|
||||
public class B<T1, T2>: OC.C<D1, D2, T1, T2>() {
|
||||
}
|
||||
}
|
||||
|
||||
open class OC<U1, U2> {
|
||||
open class C<X1, X2, Y1, Y2> {
|
||||
fun someFun(): Int {
|
||||
return 5
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class D1 {}
|
||||
class D2 {}
|
||||
|
||||
class E1 {}
|
||||
class E2 {}
|
||||
|
||||
class F1 {}
|
||||
class F2 {}
|
||||
|
||||
class G1 {}
|
||||
class G2 {}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
| A.kt:2:1:6:1 | <obinit>(...) | A.kt:2:1:6:1 | <obinit> |
|
||||
| A.kt:4:21:4:29 | someFun(...) | A.kt:9:9:10:2 | someFun |
|
||||
| A.kt:8:1:11:1 | <obinit>(...) | A.kt:8:1:11:1 | <obinit> |
|
||||
| A.kt:9:2:10:2 | <obinit>(...) | A.kt:9:2:10:2 | <obinit> |
|
||||
| A.kt:13:1:19:1 | <obinit>(...) | A.kt:13:1:19:1 | <obinit> |
|
||||
| A.kt:14:2:18:2 | <obinit>(...) | A.kt:14:2:18:2 | <obinit> |
|
||||
| A.kt:21:1:21:11 | <obinit>(...) | A.kt:21:1:21:11 | <obinit> |
|
||||
| A.kt:22:1:22:11 | <obinit>(...) | A.kt:22:1:22:11 | <obinit> |
|
||||
| A.kt:24:1:24:11 | <obinit>(...) | A.kt:24:1:24:11 | <obinit> |
|
||||
| A.kt:25:1:25:11 | <obinit>(...) | A.kt:25:1:25:11 | <obinit> |
|
||||
| A.kt:27:1:27:11 | <obinit>(...) | A.kt:27:1:27:11 | <obinit> |
|
||||
| A.kt:28:1:28:11 | <obinit>(...) | A.kt:28:1:28:11 | <obinit> |
|
||||
| A.kt:30:1:30:11 | <obinit>(...) | A.kt:30:1:30:11 | <obinit> |
|
||||
| A.kt:31:1:31:11 | <obinit>(...) | A.kt:31:1:31:11 | <obinit> |
|
||||
@@ -0,0 +1,4 @@
|
||||
import java
|
||||
|
||||
from MethodAccess c
|
||||
select c, c.getCallee()
|
||||
@@ -0,0 +1,13 @@
|
||||
|
||||
class A {
|
||||
fun foo(z: OB<G1, G2>.B<E1, E2>) {
|
||||
val foo = z.someFun()
|
||||
}
|
||||
}
|
||||
|
||||
class E1 {}
|
||||
class E2 {}
|
||||
|
||||
class G1 {}
|
||||
class G2 {}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
|
||||
public class OB<S1, S2> extends OC<F1, F2> {
|
||||
public class B<T1, T2> extends OC<F1, F2>.C<D1, D2, T1, T2> {
|
||||
}
|
||||
}
|
||||
|
||||
class OC<U1, U2> {
|
||||
public class C<X1, X2, Y1, Y2> {
|
||||
int someFun() {
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class D1 {}
|
||||
class D2 {}
|
||||
|
||||
class F1 {}
|
||||
class F2 {}
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
| A.kt:2:1:6:1 | <obinit>(...) | A.kt:2:1:6:1 | <obinit> |
|
||||
| A.kt:4:21:4:29 | someFun(...) | file:///!unknown-binary-location/OB$B.class:0:0:0:0 | someFun |
|
||||
| A.kt:8:1:8:11 | <obinit>(...) | A.kt:8:1:8:11 | <obinit> |
|
||||
| A.kt:9:1:9:11 | <obinit>(...) | A.kt:9:1:9:11 | <obinit> |
|
||||
| A.kt:11:1:11:11 | <obinit>(...) | A.kt:11:1:11:11 | <obinit> |
|
||||
| A.kt:12:1:12:11 | <obinit>(...) | A.kt:12:1:12:11 | <obinit> |
|
||||
@@ -0,0 +1,4 @@
|
||||
import java
|
||||
|
||||
from MethodAccess c
|
||||
select c, c.getCallee()
|
||||
Reference in New Issue
Block a user