Dmitriy Novozhilov
6623456d2a
[FIR] Properly support @JvmRecord
...
^KT-53867 Fixed
2022-10-03 15:48:17 +03:00
Jinseong Jeon
fc1eb02590
SLC: implement PsiVariable#computeConstantValue for light field
2022-10-02 13:41:12 +02:00
Jinseong Jeon
a58e0803fb
ULC: output update (annotation on enum entry)
...
Input has `// CHECK_BY_JAVA_FILE`
and thus ULC output as .java file should be updated too
when input was changed to add annotation on enum entry
(at commit c5916e1d )
Tested by UltraLightClassLoadingTestGenerated in IntelliJ
2022-10-02 13:41:12 +02:00
Dmitriy Novozhilov
c5916e1d1f
[AA LC] Fix computation of const initializers of fields
2022-09-15 17:27:23 +03:00
Dmitriy Novozhilov
7e24ddeb40
[AA LC] Properly compute retention for @java.lang.annotation.Retention
2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov
77546e5e06
[AA LC] Compute nullability annotation for parameter for extension receiver
2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov
c67ded2d3b
[AA LC] Properly set type mapping mode for bounds of type parameters
2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov
a3884e35e2
[AA LC] Fix type parameters for getters of generic extension properties
2022-09-15 17:27:22 +03:00
Dmitriy Novozhilov
b7712a35f0
[AA LC] Generate backing field for inline classes
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov
8e80c5830e
[AA LC] Fix annotations on fields for enum entries
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov
a88fdd5eb7
[AA LC] Implement default values for methods of annotations
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov
3a51a8a655
[AA LC] Fix computing visibility for classes
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov
ab2aa3117b
[AA LC] Add @java.lang.Override on override functions
2022-09-15 17:27:21 +03:00
Dmitriy Novozhilov
258e3f9225
[AA LC] Fix visibility of fields for const vals
2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov
1ff51356b9
[AA LC] Fix visibility of fields from companion objects
...
^KTIJ-22541
2022-09-15 17:27:20 +03:00
Ilya Kirillov
8ee4cf46d3
[slc] actualize SLC testdata
2022-09-09 14:38:12 +02:00
Jinseong Jeon
d0a8eb5c54
AA FIR: use resolved annotation argument mapping
2022-08-10 17:34:48 +02:00
Jinseong Jeon
56a5d883c0
AA FIR: handle (aliased)? annotation w/ vararg parameter
2022-08-10 17:34:48 +02:00
Dmitry Gridin
dd824aacb6
Revert "Revert "[light classes] drop old light classes and backend: iteration #2 ""
...
This reverts commit 43b4df74bc .
2022-06-28 17:57:30 +02:00
Dmitry Gridin
43b4df74bc
Revert "[light classes] drop old light classes and backend: iteration #2 "
...
This reverts commit 97ce502cbe .
2022-06-28 13:52:10 +02:00
Dmitry Gridin
97ce502cbe
[light classes] drop old light classes and backend: iteration #2
...
drop javaFileStub and fix tests
^KT-48773
2022-06-28 11:44:39 +00:00
Jinseong Jeon
b18999be82
FIR/LC: filter out scripts for facade creation
...
^KTIJ-22016 Fixed
2022-06-20 17:38:50 +02:00
Jinseong Jeon
c230a488e2
FIR LC: use the same module name as U/LC tests in IJ
2022-05-25 17:05:15 +02:00
Jinseong Jeon
1fe574f406
FIR LC: mangle internal function names
2022-05-25 17:05:14 +02:00
Jinseong Jeon
e446c988ee
FIR LC: populate default retention policy of annotations
2022-05-24 20:32:56 +02:00
Jinseong Jeon
85388f0c79
FIR LC: correct static modifiers for accessors from companion
2022-05-24 20:32:55 +02:00
Jinseong Jeon
a7a01a1f7e
FIR LC: populate JvmStatic accessors from companion
2022-05-24 20:32:55 +02:00
Jinseong Jeon
63fb00fa21
FIR LC: revisit when to add fields to companion and/or containing class
2022-05-24 20:32:55 +02:00
Jinseong Jeon
0212e9daae
FIR LC: always run with STDLIB (to handle JVM annotations)
2022-05-24 20:32:55 +02:00
Alexander Udalov
ef6d30dd51
Remove usages of JVM target 1.6 from compiler tests
...
#KT-45165
2022-04-19 22:54:40 +02:00
Yan Zhulanow
fa4dadf9b7
Update KotlinClassInnerStuffCache implementation
...
'KotlinClassInnerStuffCache' was copy-pasted from the platform's
'ClassInnerStuffCache' several years ago. After J2K and other changes,
it became quite dirty.
Besides cleaning things up, enum synthetic method handling have
significantly improved. Before, such methods were handled only in
'processDeclarationsInEnum', and 'getMethods()' didn't return them.
This led to inconsistent behavior and was reason for providing special
ad-hoc support in '1b6ded600518176b21cc308ed3e032ef8d04cc90'.
2022-03-14 17:53:55 +09:00
Yan Zhulanow
f237631f05
Revert "FIR/LC: create synthetic members of enum class"
...
This reverts commit 1b6ded60
2022-03-14 17:53:55 +09:00
Ilya Kirillov
4a5aee688e
FIR LC: fix invalid type param upper bound
2022-02-25 14:06:05 +01:00
Jinseong Jeon
1b6ded6005
FIR/LC: create synthetic members of enum class
...
^KTIJ-17414 In Progress
^KTIJ-17444 In Progress
2022-02-24 17:51:50 +01:00
Jinseong Jeon
a153a1fefb
FIR LC: create inline methods
...
unless the functions (or accessors) have reified type parameters
or inline-only annotations
2021-12-30 10:47:32 +03:00
Ilya Kirillov
62c9a7888b
Analysis: remove // FIR_COMPARISON form LC testdata as LC tests are moved from IJ
2021-12-27 16:23:21 +03:00
Ilya Kirillov
4e58dc3467
Fix small compilation problems in LC testdata which should not influence LC results
2021-12-27 16:23:21 +03:00
Ilya Kirillov
db31e0292c
Analysis: add LC testdata with current behaviour
2021-12-27 16:23:20 +03:00
Ilya Kirillov
0b3a0fd799
Analysis: fix LC test environment
2021-12-27 16:23:19 +03:00
Jinseong Jeon
f8a6ab9536
FIR LC: populate DefaultImpls if an interface has default implementations
2021-12-09 11:04:25 +01:00
Jinseong Jeon
edc17a9d5f
FIR LC: populate no-arg constructor if needed
2021-11-25 12:53:54 +01:00
Jinseong Jeon
0da9ef873a
FIR LC: use optimal type mapping mode for return type
2021-11-08 20:12:17 +01:00
Jinseong Jeon
d3c34fa200
FIR LC: use optimal type mapping mode for value parameter
2021-11-08 20:12:17 +01:00
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
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
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
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
Igor Yakovlev
e4870740e1
[LC] Fixed light classes nullability for Kotlin 1.5
...
Fixed #KT-44472
2021-04-20 15:21:12 +02:00