Jinseong Jeon
5aa8e2d0d1
FIR LC: fix nullable annotation on return type of suspend function
2021-11-01 19:19:39 +01:00
Jinseong Jeon
5880d80d26
FIR LC: add support for inline class
2021-11-01 19:17:26 +01:00
Stanislav Erokhin
c9e7c5d156
[LC] Mute Light tests about repeatable annotation
...
It isn't supported in Light classes, so we should mute it.
Quite similar change was done in 724194dec0
2021-11-01 10:38:09 +00:00
Stanislav Erokhin
c591601274
[LC] IDE LightClasses testdata update
...
Unfortunately, the same testdata is used in IDE, so we should change
testdata in compiler repo and this will affect IDE repo.
This commit is the cherry-pick of commits from IDE repo:
- 4310d730795a53a Fix UltraLightClassLoadingTestGenerated.testEnums():
check by Java file as ULC produces a different but better result
Yan Zhulanow 3/17/21, 8:57 AM
- fbe3c8ba0841f2d4 Disable comparison test for
UltraLightClassSanityTestGenerated.
testAnnotatedPropertyWithSites() Yan Zhulanow 3/18/21, 1:33 PM
- 8fc53027343b5b53 Ignore known (for ages) broken behaviour
of LC Vladimir Dolzhenko 3/19/21, 11:17 PM
2021-11-01 10:38:09 +00:00
Stanislav Erokhin
f455141ade
[ULC] Fix rendering for Foo.class in annotation value
...
Previously it was Foo::class, but it isn't correct because in java it
is Foo.class
P.s. Array<Foo> cannot be passed as annotation parameter
2021-11-01 10:38:09 +00:00
Stanislav Erokhin
65abc94411
[ULC] Unify modifiers for RepeatableAnnotationContainer
...
All the other annotation classes has abstract modifier.
All nested interfaces has static modifiers.
This commit is not so important for compiler, but it is matter for IDE,
because when we load classes in IDE via
KtLightClassForDecompiledDeclaration -- there are Abstract and Static
on the Container class
2021-11-01 10:38:08 +00:00
Jinseong Jeon
907d2e9ed4
FIR LC: populate delegates to interface methods
2021-10-27 17:06:31 +02:00
Jinseong Jeon
aad02c1259
FIR LC: introduce modifier list for members
...
to simulate `default` modifier of methods in interface
2021-09-29 22:02:48 +02:00
Ilya Kirillov
7045e3ee45
Unmute passing FIR LC test
2021-09-28 14:19:15 +02:00
Jinseong Jeon
150f066254
FIR LC: use property modifiers for backing field if lateinit
2021-09-23 00:11:25 +02:00
Jinseong Jeon
c2964f688e
FIR LC: don't include annotations w/o use-site targets to property accessors
2021-09-09 16:07:09 +02:00
Dmitry Gridin
862e87b1ba
JavaElementFinder: support repeatable annotation container
...
^KTIJ-19318
2021-09-09 11:17:35 +00:00
Dmitry Gridin
724194dec0
[ULC] fix testData in the plugin (related to repeatable annotation)
2021-09-08 19:50:40 +07:00
Dmitry Gridin
11e71e4e27
[ULC] support repeatable annotation and container
...
^KTIJ-19318
2021-09-07 12:47:24 +00:00
Ilya Kirillov
cb37a05b79
Restore LC compiler testdata
2021-08-09 20:29:22 +02:00
Jinseong Jeon
4396482fed
FIR IDE: fix nullability of KtType variants
2021-08-09 20:29:19 +02:00
Ilya Kirillov
cf04be5207
FIR IDE: temp mute failing light class test
2021-06-21 00:51:30 +02:00
Dmitry Petrov
851980e36f
JVM_IR KT-45103 optimize direct invoke for lambdas and callable refs
2021-05-18 22:20:12 +03:00
Igor Yakovlev
e4870740e1
[LC] Fixed light classes nullability for Kotlin 1.5
...
Fixed #KT-44472
2021-04-20 15:21:12 +02:00
Igor Yakovlev
63160293fb
[LC] Fix invalid nullability for properties
...
Fixed #KT-46097 and #KT-41671
2021-04-20 15:21:12 +02:00
Igor Yakovlev
f2e02c2d50
[FIR IDE] Fixed invalid type parameters for inner classes
2021-04-07 11:25:22 +02:00
Mikhail Zarechenskiy
111e54c8c1
Do not generate DefaultImpls for light classes if not needed
...
#KT-41130 In Progress
2021-03-18 16:38:52 +03:00
Igor Yakovlev
023b7fbb8f
[ULC] Fix invalid primitive type annotating
...
Fixed #KT-45417
2021-03-12 10:35:37 +01:00
Igor Yakovlev
b744f41c0d
[ULC] Fix annotations invalid parents
...
Fixed #KT-45287
2021-03-05 14:33:10 +01:00
Ilya Kirillov
b08eb6cf4c
FIR IDE: specify behaviour of HL API getOverriddenSymbols
...
- Split it into two functions getAllOverriddenSymbols and getDirectlyOverriddenSymbols
- Implement tests for getOverriddenSymbols
- temporary mute inheritance.kt light classes test
2021-02-19 11:49:57 +01:00
Jinseong Jeon
a884555171
FIR: bail out early for override check if base candidate is private
2021-02-15 19:16:36 +03:00
Dmitriy Novozhilov
2d5b685535
[FIR] Fix processing constructors of sealed classes
...
- Allow declaring protected constructors in sealed classes
- Make default visibility of sealed class constructor `protected`
KT-44861
KT-44865
2021-02-12 13:36:41 +03:00
Alexander Udalov
adfa8c788c
Light classes: use JVM target from the module
...
Using "JVM_1_8" always resulted in incorrect mapping of Kotlin
annotation targets to Java element types.
The change in AbstractKotlinRenderLogTest is needed because while
CliTraceHolder.module is technically a descriptor leak, it was never
detected by this test accidentally, because of the depth cutoff equal to
10, which started to not be enough after the minor refactoring of
replacing `Delegates.notNull` with `lateinit`.
2021-02-01 11:54:05 +01:00
Alexander Udalov
64e97225b8
Light classes: map annotation targets depending on JVM target
...
Since the default JVM target (`JvmTarget.DEFAULT`) is now 1.8, the
changed test started to fail. This change fixes it.
2021-02-01 11:54:04 +01:00
Alexander Udalov
d022bb0248
Switch default JVM target to 1.8
...
#KT-29405 Fixed
2021-02-01 11:54:04 +01:00
Stanislav Erokhin
c1722350b6
Add constructors to KtScope
...
- KtClassLikeSymbol.primaryConstructor was removed
- Constructors were removed from getCallableMembers because
constructors has no name (or special name `<init>`) and previous
implementation was incorrect
- KtScope.getAllSymbols returns constructors as before. Before it was
like this because of the incorrect implementation of getCallableMembers
- getConstructors has sence only for class scope,
for the rest cases it is empty
2021-01-14 12:12:28 +01:00
Denis.Zharkov
0e3aaceb16
Fix ultra light structure for @JvmRecord classes
2021-01-11 20:51:40 +03:00
Mikhail Glukhikh
107a825c5f
Make FileDescriptorForVisibilityCheck subtype of PackageFragmentDescriptor
...
#KT-20548 Fixed
2020-12-23 00:11:08 +03:00
Igor Yakovlev
f282b721bc
[FIR IDE] LC Fix test data
2020-12-16 12:29:53 +03:00
Igor Yakovlev
46071c1925
[FIR IDE] LC fix annotations with special sites and nullability
2020-12-16 12:29:53 +03:00
Igor Yakovlev
842d31d04e
[FIR IDE] Fix HL API test data
...
Ignore failed tests
Set passing test to comparison mode
Fix testdata for symbols
Fix invalid LAZINESS parameter reading from testdata
2020-12-02 15:13:09 +03:00
Igor Yakovlev
5630667320
[FIR IDE] LC better support for JvmMultiFileClass annotation
2020-12-02 15:13:08 +03:00
Igor Yakovlev
56c3faee00
[FIR IDE] LC Fix generating unique field names
2020-12-02 15:13:08 +03:00
Igor Yakovlev
18e5af37ff
[FIR IDE] LC Fixed incorrect JvmOverloads
2020-12-02 15:13:07 +03:00
Igor Yakovlev
535aa1e9e0
[FIR IDE] LC expand typealiases for applied annotations
2020-12-02 15:13:07 +03:00
Igor Yakovlev
3fc424246b
[FIR IDE] LC basic support for type arguments
...
+ small fixes for deprecation, etc.
2020-12-02 15:13:06 +03:00
Igor Yakovlev
2a8f783393
[FIR IDE] HL API Better support of nullability and modality
2020-12-02 15:13:06 +03:00
Igor Yakovlev
dbb54c87bc
[FIR IDE] Add Fir lightclasses tests and fix FindUsages tests
2020-11-11 21:02:00 +03:00
Igor Yakovlev
e08763f3dd
[ULC] Add annotations for PsiTypes in UltraLight classes
...
WIP on KT-41148, KT-41406, KT-41420
2020-09-11 12:49:05 +03:00
Igor Yakovlev
97ac86273a
[ULC] Add support of const fields to multifile facade
2020-09-11 12:49:05 +03:00
Igor Yakovlev
309bf49a83
Update lightclass tests renderer
...
+mute invalid old light classes tests
2020-09-11 12:49:04 +03:00
Igor Yakovlev
dbb4337ac4
[ULC] Fix invalid annotation resolve for KtUltraLightParameterForSetterParameter
2020-09-11 12:49:02 +03:00
Igor Yakovlev
129979b0ff
[ULC] Improve UL facades for private properties without accessors
2020-09-11 12:49:00 +03:00
Igor Yakovlev
025e2f2fe9
[ULC] Better support for UL MultifileFacade classes
2020-09-11 12:49:00 +03:00
Igor Yakovlev
6accc8fcf9
[ULC] Fixed invalid constructor parameter list for UL script
2020-09-11 12:48:59 +03:00