Chris Smowton
c4ded5b4a7
Remove unused function
2022-12-09 10:33:04 +00:00
Chris Smowton
3dc9c2e57b
Remove unnecessary unchecked cast
2022-12-09 10:33:04 +00:00
Chris Smowton
f9fc08bd40
Replace uses of the !! operator in borrowed code
2022-12-09 10:33:04 +00:00
Chris Smowton
81353f8654
Make annotation extraction compatible with all supported Kotlin versions
2022-12-09 10:33:04 +00:00
Chris Smowton
757fa60a46
Remove unused import
2022-12-09 10:33:04 +00:00
Chris Smowton
5c019940db
Fix missing !! removal
2022-12-09 10:33:04 +00:00
Chris Smowton
ca27f9516a
Replace uses of !! operator
2022-12-09 10:33:04 +00:00
Chris Smowton
eaa9595ea2
Restore type-accesses to annotation methods; accept test changes.
2022-12-09 10:33:03 +00:00
Chris Smowton
9e0eb56d77
Extract repeatable annotation container types, including synthetic containers
2022-12-09 10:33:03 +00:00
Chris Smowton
df90fc1a80
Disable type parameter annotation extraction pending a database change
2022-12-09 10:33:03 +00:00
Chris Smowton
9b3c07c32b
Add annotation class meta-annotations per classes' expected JVM lowering
2022-12-09 10:33:03 +00:00
Chris Smowton
f7d2644d74
Re-enable extracting most annotations
2022-12-09 10:33:03 +00:00
Chris Smowton
26540111ce
Factor out common code for referencing an external type
2022-12-09 10:33:03 +00:00
Chris Smowton
8781366fbe
Only extract function annotations for unbound types
...
Note however this includes extracting annotations for external types, unlike the situation for function bodies.
2022-12-09 10:33:01 +00:00
Chris Smowton
06133e74a5
Handle generic annotations
2022-12-09 10:31:34 +00:00
Chris Smowton
d7213d2d82
Only convert KClass -> Class in annotation context
2022-12-09 10:31:34 +00:00
Chris Smowton
24434ed0ff
Make annotation labelling consistent between Java and Kotlin
...
This gives all annotations and expressions derived from them globally-significant and stable names, enabling the Kotlin and Java extractors to see the same annotation without introducing database conflicts.
2022-12-09 10:31:34 +00:00
Tamas Vajk
df595c05f2
WIP: revert some annotation extraction to get proper tree in printast
2022-12-09 10:31:34 +00:00
Tamas Vajk
fed770fcd1
Move kotlin annotations to negative child index
2022-12-09 10:31:33 +00:00
Tamas Vajk
96a407c9c5
WIP: extract annotations for all declarations
2022-12-09 10:31:33 +00:00
Tamas Vajk
3e1d4a7400
Add more annotation tests, add KClass to Class substitution
2022-12-09 10:31:33 +00:00
Tamas Vajk
b73bfd6133
Compilation fixup
2022-12-09 10:31:33 +00:00
Tamas Vajk
3b09cb2224
WIP: Extract annotation values (tests are missing)
2022-12-09 10:31:33 +00:00
Tamas Vajk
7b075c2190
WIP: extract annotations on classes, with constant values
2022-12-09 10:31:33 +00:00
Tamas Vajk
9fa840106f
Extract annotation declarations
2022-12-09 10:31:33 +00:00
Tamas Vajk
d93dce0fa9
Kotlin: Fix extension and dispatch parameter order in $default functions
2022-12-09 10:29:51 +01:00
Tamas Vajk
6457e059f5
Kotlin: Fix extraction of $default extension functions
2022-12-09 10:26:44 +01:00
Chris Smowton
a79126268c
Override modality when needed
...
In particular when generating an implementation based on an abstract prototype, the result is final, and an interface forwarder is open / Java's default modality.
2022-12-08 14:39:57 +00:00
Chris Smowton
045e3a2cf3
Kotlin: extract callable modality
2022-12-08 12:22:50 +00:00
Ian Lynagh
6267da44ae
Kotlin: Improve diagnostic limit message
...
The message saying that the limit was exceeded is now given at the same
severity as the original message.
2022-12-07 18:33:35 +00:00
Chris Smowton
522a549d61
Improve debug logging when the external decl extractor handles an IrFile
2022-12-06 20:39:14 +00:00
Chris Smowton
d2e7797485
Rename to writeStubTrapFile
2022-12-06 20:39:03 +00:00
Chris Smowton
00f323c8bd
Fix: extract directly exposed fields with static modifier
2022-12-06 20:32:10 +00:00
Chris Smowton
82f3c2f6d5
Mark the Companion field as static
2022-12-06 18:35:04 +00:00
Chris Smowton
d9dc8e38f9
Fix binary names for classes declared from source
...
Only top-level non-class declarations need the IrFile's expected class name inserting
2022-12-06 18:35:04 +00:00
Chris Smowton
910a1f872d
Adjust opt-in required to use string-manipulation functions in Kotlin <= 1.5
2022-12-06 18:35:04 +00:00
Chris Smowton
540a2a623e
Don't create stub trap files for anonymous or local classes, or unexpected kinds of top-level declaration
2022-12-06 18:35:04 +00:00
Chris Smowton
08e3431107
Also stub class files relating to file classes and top-level declarations
2022-12-06 18:35:04 +00:00
Chris Smowton
748637c2d8
Tidy and use version 0 for classes extracted from source
2022-12-06 18:35:03 +00:00
Chris Smowton
e34d72aee9
Kotlin: stub trap .class files when extracting a class from Kotlin source
2022-12-06 18:35:03 +00:00
Chris Smowton
3b5b121aeb
Merge pull request #11553 from smowton/smowton/fix/kotlin-synthetic-noarg-constructor
...
Kotlin: Extract a no-arg constuctor whenever a Kotlin class has default values for all parameters
2022-12-06 10:07:31 +00:00
Chris Smowton
407e4cdd07
Don't create a default constructor for annotations, or classes that explicitly declare a no-arg constructor.
2022-12-05 16:17:51 +00:00
Chris Smowton
ff4baf096f
Don't add name mangling to top-level internal functions
...
Turns out kotlinc only adds this sort of name mangling to class member functions
2022-12-02 20:16:19 +00:00
Chris Smowton
1c0494ec53
Extract a no-arg constuctor whenever a Kotlin class has default values for all parameters
2022-12-02 20:07:43 +00:00
Ian Lynagh
7eaef0cd3d
Merge pull request #11436 from igfoo/igfoo/NamingConventionsRefTypes
...
Kotlin: Enable java/misnamed-type query
2022-11-29 18:39:18 +00:00
Ian Lynagh
3b31b50983
Kotlin: Rename compilerGeneratedKind to compilerGeneratedKindOverride
2022-11-29 13:07:47 +00:00
Ian Lynagh
a32363de79
Kotlin: Avoid giving a single class 2 compiler-generated kinds
2022-11-28 12:14:50 +00:00
Ian Lynagh
a423f5f695
Kotlin: Enable java/misnamed-type query
...
We used to get alerts for the class around a local function, a lambda,
or a function reference, which we give name "". Now those are marked as
compiler-generated, and the query ignores compiler-generated types.
2022-11-25 17:11:40 +00:00
Chris Smowton
8ec681e61c
Kotlin: bump default CI version to 1.7.20
...
A bunch of test expectations change because 7f531d8426 means that we now see (a) local variable declarations with source locations covering only their identifier, not the whole statement, and (b) more SYNTHETIC_OFFSET values for the parts of a destructuring assignment
or initialiser, which show up as file.kt:0:0:0:0 in DbLocation form.
2022-11-25 10:19:26 +00:00
Ian Lynagh
184c903ec7
Merge pull request #11401 from igfoo/igfoo/unused
...
Kotlin: Remove an unused argument
2022-11-24 12:47:50 +00:00