Jinseong Jeon
5298abf2d6
AA/LC: introduce an API to find script files
2023-04-25 14:49:03 +02:00
Jinseong Jeon
f9086daf4d
SLC: add support for .kts
...
^KTIJ-21108
^KT-50241
^KT-55626 Fixed
2023-04-25 14:49:03 +02:00
Mikhail Glukhikh
1f05ce2e01
AA/LC: Support annotation property->backing field move
...
#KT-57462 Fixed
2023-04-25 12:18:27 +00:00
Pavel Mikhailovskii
37ed7beda0
KT-57135 Take into account annotations' allowed targets
...
- Check allowed targets
- Attach field annotations to the backing field
2023-04-25 12:18:26 +00:00
Dmitrii Gridin
2a00be916a
[SLC] SymbolLightAccessorMethod: avoid symbol restoring on isValid
...
^KTIJ-25108 Fixed
2023-04-24 11:53:36 +00:00
Dmitrii Gridin
f85dc95b66
[SLC] SymbolLightAccessorMethod: reduce number of requests on symbol restoring
...
We can avoid extra restoring of property accessors
if the corresponding property is already restored
^KT-57850
2023-04-21 11:10:20 +00:00
Jinseong Jeon
0ca86c86be
SLC: add nullability annotation to value param of non-synthetic enum members
...
^KT-57567
2023-04-19 16:14:23 +02:00
Jinseong Jeon
9fe30bfc12
SLC: regression test for final modifier on enum members
...
^KT-57567
2023-04-19 16:14:23 +02:00
Nikita Bobko
5a96754aec
Shift ReferencesToSyntheticJavaProperties feature release from 1.9 to 2.1
...
Other related tests:
- testGenericJavaProperty
- testFunInterfaceConstructorReference
Meta issue: KT-8575
Review: https://jetbrains.team/p/kt/reviews/9595
UnsupportedSyntheticCallableReferenceChecker only existed for K1,
because we wanted to release the feature for 1.9 and the feature should
have been working for K2 unconditionally. But since, we're postponing
the release until 2.1, we also need to port the checker from K1 to K2
2023-04-17 17:42:01 +00:00
Jinseong Jeon
5403cc7feb
SLC: fix type mapping mode for var
...
^KT-57578
2023-04-17 10:59:03 +02:00
Dmitrii Gridin
7d37bb1f78
[LC] FakeFileForLightClass: drop stub access from equals/hashCode
...
^KT-57857 Fixed
2023-04-11 09:19:39 +00:00
Dmitrii Gridin
691a1a683f
[SLC] SymbolLightFieldForProperty: move STATIC modifier calculation to initial values
...
^KT-57569
2023-03-31 12:21:17 +00:00
Jinseong Jeon
98074c4849
SLC: merge field's static modifier setting
2023-03-31 12:21:17 +00:00
Jinseong Jeon
107b0229ef
SLC: use partition to distinguish ctor properties from regular member properties
2023-03-31 12:21:16 +00:00
Jinseong Jeon
3c982cfaa3
SLC: mangle internal setter name
2023-03-31 12:21:16 +00:00
Jinseong Jeon
91925b947d
SLC: fix visibility of lateinit var
...
^KT-57569 Fixed
2023-03-31 12:21:15 +00:00
Jinseong Jeon
d8902816d0
SLC: fix non-last vararg parameter type
...
^KT-57547 Fixed
2023-03-30 12:07:01 +00:00
Jinseong Jeon
0ac3fae9ab
LC: commonize facade for multi-file class
2023-03-29 18:51:03 +02:00
Jinseong Jeon
3b09313192
SLC: fix inheritance list for subtype of Comparator
...
^KT-57548 Fixed
2023-03-29 11:27:34 +02:00
Jinseong Jeon
1b3b554084
SLC: force boxed return type when needed
...
e.g., when overriding a function whose return type is not primitive
^KT-57579 Fixed
2023-03-29 11:27:34 +02:00
Pavel Mikhailovskii
85b5a4521e
KT-56843 [SLC] Support unsafe property initializers
2023-03-28 08:17:37 +00:00
Dmitrii Gridin
c046bedfc2
[AA FIR] FirLazyAnnotationTransformer: fix resolve contract violation
...
We can't reduce resolve to COMPILER_REQUIRED_ANNOTATIONS phase for
annotations with arguments, because currently they don't have
argument mapping
```stracktrace
org.jetbrains.kotlin.utils.KotlinExceptionWithAttachments: By now the annotations argument mapping should have been resolved
at org.jetbrains.kotlin.analysis.api.fir.annotations.FirAnnotationUtilsKt.mapAnnotationParameters(firAnnotationUtils.kt:137)
at org.jetbrains.kotlin.analysis.api.fir.FirUtilsKt.toKtAnnotationApplication(FirUtils.kt:79)
at org.jetbrains.kotlin.analysis.api.fir.annotations.FirAnnotationUtilsKt.annotationsByClassId(firAnnotationUtils.kt:60)
at org.jetbrains.kotlin.analysis.api.fir.annotations.FirAnnotationUtilsKt.annotationsByClassId$default(firAnnotationUtils.kt:46)
```
^KT-57424 Fixed
2023-03-22 10:33:27 +01:00
Dmitrii Gridin
bccf1aaff0
[SLC] symbolLightUtils: cleanup code
2023-03-16 11:42:22 +00:00
Dmitrii Gridin
4dbc6654b0
[SLC][tests] rename stopIfCompilationErrorDirectivePresent to isTestAgainstCompiledCode for clarity
2023-03-16 11:42:21 +00:00
Dmitrii Gridin
71299f1d13
[SLC] cover case with invalid java identifier as annotation argument
...
^KT-56868 Fixed
^KT-57328
2023-03-16 11:42:21 +00:00
Pavel Mikhailovskii
0f589dac34
KT-56833 [SLC] Mark accessors of lateinit properties with @NotNull
2023-03-14 12:45:57 +00:00
Pavel Mikhailovskii
164cbc9968
KTIJ-24768 Fix IllegalArgumentException in KtType.isPrimitiveBacked
2023-03-10 11:03:45 +00:00
Pavel Mikhailovskii
d9f023db89
KT-56845 [SLC] Add @Override to overridden property accessors
2023-03-10 10:32:48 +00:00
Pavel Mikhailovskii
086d914f64
Regenerate tests
2023-03-03 19:27:24 +01:00
Pavel Mikhailovskii
a6e1826bbc
Reimplement the fix for KtSuperTypeList.findEntry
2023-03-03 15:38:12 +00:00
Dmitrii Gridin
0a1c903e11
[SLC] add tests for containingClass
...
^KT-56613
2023-03-01 10:43:03 +00:00
Dmitrii Gridin
9129235079
[LC] add missing parent to implementsList and extendsList
...
^KT-56613
2023-03-01 10:43:03 +00:00
Dmitrii Gridin
58dc93da90
[LC] do not store name identifier as property
...
^KT-56613
2023-03-01 10:43:02 +00:00
Dmitrii Gridin
327208fb8a
[SLC] drop hard references to member declarations to reduce memory consumption
...
^KT-56613 Fixed
2023-03-01 10:43:02 +00:00
Dmitrii Gridin
e20f72fcf8
[SLC] introduce tests on equality
...
^KT-56613
2023-03-01 10:43:01 +00:00
Dmitrii Gridin
95455c9870
[DLC] add missing visitor methods
...
Some of our light classes have no correct parent (KT-56882),
so I temporarily disabled
AbstractSymbolLightClassesParentingTestBase for such cases
(previously decompiled light classes were not tested at all)
^KT-56613
^KT-56882
2023-03-01 10:43:01 +00:00
Dmitrii Gridin
0bd193ccba
[SLC] rename AbstractSymbolLightClassesEqualityTest to AbstractSymbolLightClassesEquivalentTest
...
^KT-56613
2023-03-01 10:43:00 +00:00
Dmitrii Gridin
8c757e36ea
[SLC] provide correct parent for annotations on type
...
The first step of KT-56870
^KT-56613
^KT-56870
2023-03-01 10:43:00 +00:00
Dmitrii Gridin
7273610d41
[SLC] introduce AbstractSymbolLightClassesParentingTestByPsi
...
^KT-56613
2023-03-01 10:43:00 +00:00
Dmitrii Gridin
cfb358140c
[SLC] rename AbstractSymbolLightClassesParentingTest to AbstractSymbolLightClassesParentingTestByFqName
...
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin
68e6dba22b
[SLC] extract base class from AbstractSymbolLightClassesParentingTest
...
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin
bf600afce0
[SLC] extract base class from AbstractSymbolLightClassesStructureTest
...
^KT-56613
2023-03-01 10:42:59 +00:00
Dmitrii Gridin
b565df65c4
[SLC] drop redundant properties to reduce memory consumption
...
^KT-56613
2023-03-01 10:42:58 +00:00
Ilya Kirillov
4944b454c5
[Analysis API] optimize KotlinPackageProvider.getSubPackageFqNames
...
Previously, we queried heavy kotlin package provider two times which affected performance
Now it's being queries only a single time
Also, the commit introduces separation for KotlinPackageProvider between kotlin and platform-specific packages
^KTIJ-24640
2023-02-28 13:38:23 +00:00
Dmitrii Gridin
550b4f1f11
[SLC] throw exception on redundant test data file
2023-02-23 17:15:53 +00:00
Pavel Mikhailovskii
9204f8162e
[SLC] Fix modifiers for @JvmStatic methods in interfaces
2023-02-23 17:04:22 +00:00
Pavel Mikhailovskii
378bb4c4ac
KT-56891 SLC Don't include abstract members in DefaultImpls
2023-02-23 12:50:59 +00:00
Pavel Mikhailovskii
492a161d2c
KT-56842 [SLC] Don't mark primitive context receiver parameters with @NotNull
2023-02-22 10:15:19 +00:00
Pavel Mikhailovskii
de1927abb6
KT-56835 [SLC] Mark property$delegate fields as final and @NotNull
2023-02-22 09:40:32 +00:00
Pavel Mikhailovskii
d81170fbcc
KT-56840 [SLC] Don't mark primitive-backed types with @NotNull
2023-02-21 17:29:16 +00:00