Chris Smowton
e868cdf91b
Merge pull request #9876 from smowton/smowton/feature/interface-forwarding
...
Kotlin: implement default interface forwarding
2022-10-20 10:17:47 +01:00
Chris Smowton
c6b62c934b
Merge pull request #10853 from smowton/smowton/fix/specialised-anon-classes
...
Kotlin: extract called private methods of specialised types, and specialised instances of anonymous types
2022-10-19 16:48:28 +01:00
Chris Smowton
14b8892ced
Don't create interface forwarders for other interfaces, and target super accesses correctly
...
Intermediate interfaces don't need interface forwarders, since the Kotlin compiler won't try to make them non-abstract by synthesising methods.
Super references should always target an immediate superclass, not the ancestor containing the intended implementation.
2022-10-19 15:37:06 +01:00
Tamas Vajk
d65c52bfc5
Kotlin: Add test for useless null check on safe calls
2022-10-19 08:49:56 +02:00
Tamás Vajk
0069fd9681
Merge pull request #10860 from tamasvajk/kotlin-clinit-static
...
Kotlin: Add `static` modifier to `clinit`
2022-10-18 11:39:34 +02:00
Chris Smowton
50f99d8e82
Don't produce interface forwarders directed at an abstract target
2022-10-18 10:31:01 +01:00
Chris Smowton
67aa6c7737
Merge pull request #10822 from smowton/smowton/feature/kotlin-collection-literals
...
Koltin: support collection literals
2022-10-18 09:45:59 +01:00
Tamas Vajk
b67a8877a7
Kotlin: Add static modifier to clinit
2022-10-18 09:26:06 +02:00
Tamás Vajk
543e2f5aab
Merge pull request #10678 from tamasvajk/kotlin-type-param-modifiers
...
Kotlin: Extract type parameter modifiers (`reified`, `in`, `out`)
2022-10-18 09:10:57 +02:00
Chris Smowton
1613e47388
Improve and accept changes to compiler-generated methods test
2022-10-17 18:43:11 +01:00
Chris Smowton
fff9a75ff8
Accept test changes
2022-10-17 18:38:13 +01:00
Chris Smowton
595a66a3a4
Fix extraction of primitive-typed arrays
2022-10-17 18:29:59 +01:00
Chris Smowton
f358be85eb
Accept test changes
2022-10-17 18:23:10 +01:00
Chris Smowton
eb97735568
Merge pull request #10797 from smowton/smowton/fix/byte-short-inversion
...
Kotlin: fix bit-inversion operator for Byte and Short types
2022-10-17 15:05:57 +01:00
Chris Smowton
be53ec9b42
Accept test changes
2022-10-17 11:48:22 +01:00
Chris Smowton
f9d65e42dd
Use compiler-provided adapter functions when creating a function reference
2022-10-17 11:48:21 +01:00
Chris Smowton
4c63237ed1
Add test checking argument <-> parameter matching, and fix superconstructor calls that were missing their argument.
2022-10-17 11:44:44 +01:00
Chris Smowton
8553266aae
Allow specialised instances of anonymous classes
2022-10-17 11:27:05 +01:00
Chris Smowton
73f5dea51e
Extract private members of specialised generic classes on demand
2022-10-17 11:27:04 +01:00
Chris Smowton
f1fd470f49
Merge pull request #10821 from smowton/smowton/fix/kotlin-property-ref-to-sam-interface
...
Kotlin SAM conversion: tolerate property refs used to implement a SAM interface
2022-10-17 11:25:24 +01:00
Tamás Vajk
85fbf4b965
Merge pull request #10767 from tamasvajk/kotlin-prop-ref-fix
...
Kotlin: adjust extracted property reference base class
2022-10-17 09:40:03 +02:00
Ian Lynagh
f0eabd4675
Merge pull request #10759 from igfoo/igfoo/numlines2
...
kotlin: Populate numlines
2022-10-14 15:39:40 +01:00
Ian Lynagh
05f70e9c66
Merge pull request #10633 from igfoo/igfoo/ministdlib
...
Kotlin: Add a ministdlib test
2022-10-14 15:22:21 +01:00
Chris Smowton
e1c43c67ee
Koltin: support collection literals
2022-10-13 18:48:00 +01:00
Chris Smowton
1efcf38a34
Kotlin SAM conversion: tolerate property refs used to implement a SAM interface
2022-10-13 17:32:22 +01:00
Tamás Vajk
6c781b5b1a
Merge pull request #10789 from tamasvajk/kotlin-useless-params
...
Kotlin: reduce FPs in useless parameter check for Kotlin code
2022-10-13 09:40:54 +02:00
Chris Smowton
429d400125
Kotlin: fix bit-inversion operator for Byte and Short types
2022-10-12 17:23:16 +01:00
Ian Lynagh
9dc933cfc8
Kotlin: Fix inherited-callee test
...
We can't define the same classes in Java and Kotlin.
2022-10-12 13:45:21 +01:00
Tamas Vajk
955336fb22
Kotlin: exclude generated code from useless parameter check
2022-10-12 12:42:56 +02:00
Tamas Vajk
aa9dc3a764
Kotlin: Add test case for useless parameter FP
2022-10-12 12:42:27 +02:00
Chris Smowton
3b49594c20
Kotlin: Add Callable.getKotlinParameterDefaultsProxy
2022-10-12 11:29:55 +01:00
Tamas Vajk
9eea6d4193
Kotlin: Extract type parameter modifiers (reified, in, out)
2022-10-11 16:40:07 +02:00
Tamás Vajk
8523d21f8c
Merge pull request #10696 from tamasvajk/kotlin-lateinit
...
Kotlin: Extract `lateinit` modifier
2022-10-11 15:03:10 +02:00
Tamas Vajk
43f9331052
Kotlin: adjust extracted property reference base class
2022-10-11 12:52:26 +02:00
Tamas Vajk
92b425b1c2
Kotlin: Add test to show imperfections in property reference extraction
2022-10-11 12:51:06 +02:00
Ian Lynagh
591844f680
Kotlin: Add a numlines test
2022-10-10 19:04:11 +01:00
Chris Smowton
5756a33604
Merge pull request #10737 from smowton/smowton/fix/type-instance-within-default-value-erasure
...
Kotlin: fix type variable erasure inside default function values
2022-10-10 16:31:07 +01:00
Tamás Vajk
70b8224a8b
Merge pull request #10723 from tamasvajk/kotlin-generated-files
...
Kotlin: Recognize generated files
2022-10-10 16:24:42 +02:00
Chris Smowton
dfdfd39bcc
Merge pull request #10732 from smowton/smowton/fix/kotlin-enum-corresponding-classes
...
Koltin: Extract the corresponding classes of enum entries
2022-10-10 15:04:02 +01:00
Tamas Vajk
544e2e4107
Remove path based generated file classification
2022-10-10 14:42:15 +02:00
Tamás Vajk
1cf2db1a0b
Merge pull request #10718 from tamasvajk/kotlin-internal-repr
...
Kotlin: ignore properties in `java/internal-representation-exposure` check
2022-10-10 13:58:55 +02:00
Tamás Vajk
87b971c78f
Merge pull request #10728 from tamasvajk/kotlin-missing-override-sam
...
Kotlin: Extract `override` modifier on SAM methods
2022-10-10 13:58:28 +02:00
Tamás Vajk
cd8ac1a835
Merge pull request #10720 from tamasvajk/kotlin-equals-fix
...
Kotlin: Consider `::class` type check in `java/unchecked-cast-in-equals`
2022-10-10 13:58:15 +02:00
Chris Smowton
bef4011947
Kotlin: fix type variable erasure inside default function values
...
Previously because extractClassInstance didn't use the declaration stack, we wouldn't notice that it was legal to refer to its type variable in the context of extracting a specialised method <-> method source-decl edge. This led to erasing the types of the source-decl, so that e.g. Map.put(...) would have signature (Object, Object) not (K, V)
as it should.
2022-10-07 17:31:38 +01:00
Chris Smowton
2df1d63d1c
Extract the corresponding classes of enum entries, where they exist.
2022-10-07 12:23:08 +01:00
Tamas Vajk
26c4216fef
Kotlin: Extract override modifier on SAM methods
2022-10-07 11:23:14 +02:00
Tamas Vajk
9f6240b38c
Kotlin: Add test for missing override modifier on SAM methods
2022-10-07 11:22:15 +02:00
Tamas Vajk
f51c13f0c1
Kotlin: Recognize generated files
2022-10-07 09:32:00 +02:00
Tamas Vajk
51f9314a50
Kotlin: Consider ::class type check in equals
2022-10-07 09:23:01 +02:00
Tamas Vajk
f7f12076df
Kotlin: Add test case for ::class type check in equals
2022-10-07 09:22:10 +02:00