Commit Graph

87108 Commits

Author SHA1 Message Date
Elena Lepilkina c294365068 [K/N] Catch exceptions in CAdapters when caches enabled (KT-47828 fixed) 2021-11-02 12:04:38 +00:00
Elena Lepilkina d8b456e8b6 [K/N] Rework code generation for exception handler 2021-11-02 12:04:37 +00:00
Elena Lepilkina cde51ecc3a [K/N] Added function SetCurrentFrame to use in unwind block 2021-11-02 12:04:37 +00:00
Sergej Jaskiewicz 42c213d950 [JS IR] Explicitly convert Long values to String in string concatenation
#KT-39891 Fixed
2021-11-02 10:42:28 +00:00
Konstantin Tskhovrebov a9f850dac0 Refactor FatFrameworkTask: use FrameworkDescriptor instead Framework.
for independence from module compilation.
2021-11-02 06:18:25 +00:00
Jinseong Jeon c3c79b874d FIR IDE: make constant evaluator robust to arithmetic exception 2021-11-01 22:50:47 +01:00
Mads Ager e5bff514b6 FIR2IR: Fix line number differences in try block 2021-11-01 23:59:59 +03: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
Jinseong Jeon 0e7d1b3945 FIR LC: refactor creation of property accessors 2021-11-01 19:17:26 +01:00
Jinseong Jeon 95a3e81098 LC: remove unnecessary referential equality check and semicolon in inline class 2021-11-01 19:17:25 +01:00
Sergey Igushkin 05822c59b5 Fix Android Lint dependency resolution issues (KT-49483)
Android Gradle plugin resolves the *Classpath configurations in an
artifact view with an artifactType attribute set, which should
give a resolved variant with a different `org.gradle.category`
attribute. With `org.gradle.category=library` set by the Kotlin
Gradle plugin, that couldn't work.

To fix this, don't set the `org.gradle.category` attribute on the
Android resolvable configurations.

TODO: Add integration tests!
2021-11-01 14:57:50 +00:00
Vladimir Dolzhenko eaff4c6026 Reset elementFinders on clearPackageCaches()
Clean up references on a plugin unload to avoid class leakage

Relates to #KT-49475

Merge-request: KT-MR-4891
2021-11-01 14:21:15 +00:00
Ilya Goncharov 2584f45b1c [JS IR] Refactor export model generator
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:24 +00:00
Ilya Goncharov 9fdb0a23cd [JS IR] Add literal and union types to TS generation, support them for enum
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:24 +00:00
Ilya Goncharov 4fa2fa6c26 [JS IR] Export name and ordinal for enum classes
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:24 +00:00
Ilya Goncharov a31a6c5117 [JS IR] Fix conflict with master
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:23 +00:00
Ilya Goncharov 8e5fb50506 [JS IR] Fix diagnostic test on exportness of enum classes
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:23 +00:00
Ilya Goncharov 993b194a7b [JS IR] Actualize JS files according to TS tests
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:22 +00:00
Ilya Goncharov 69f6dc059d [JS IR] Export type for enum class and not extends kotlin.Enum in TS
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:22 +00:00
Ilya Goncharov 817e3dc306 [JS IR] Add TypeScript export tests for enum class
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:21 +00:00
Ilya Goncharov cd1296309f [JS IR] Add constructor parameter to test and values, valueOf methods
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:21 +00:00
Ilya Goncharov 9bd44e01f5 [JS IR] Export enum members like from usual classes
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:20 +00:00
Ilya Goncharov 42cb0e60d7 [JS IR] Process enum classes correctly in export model generator
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:20 +00:00
Ilya Goncharov 025e335b0f [JS IR] Add more granularity to find enum related declarations
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:20 +00:00
Ilya Goncharov c7bec4c6c4 [JS IR] Allow to export enum classes
^KT-37916 fixed
^KT-44494 fixed
2021-11-01 13:28:19 +00:00
Ilya Goncharov 196dc6b071 [JS IR] Add test for enum exportness
^KT-44494 fixed
2021-11-01 13:28:19 +00:00
Mads Ager 41aa0a7c7f [FIR] Fix line number differences between psi2ir and fir2ir. 2021-11-01 15:43:13 +03:00
Mads Ager 8a8c38cc48 [FIR] Enable stepping tests. 2021-11-01 15:43:08 +03:00
Mikhael Bogdanov 2258e26799 Fix INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPER diagnostic in IDE 2021-11-01 13:30:58 +01:00
Mikhael Bogdanov 40158d1ce6 Update -Xjvm-default description 2021-11-01 13:30:58 +01:00
Mikhael Bogdanov 00d344d92a Update INTERFACE_CANT_CALL_DEFAULT_METHOD_VIA_SUPER message 2021-11-01 13:30:57 +01:00
Mikhael Bogdanov afc149d460 JvmDefault. Allow non default inheritance with special flag
#KT-47000
2021-11-01 13:30:57 +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
Victor Petukhov b7a9a7d922 Make backTicked.kt test more reasonable, though real invoking the passed lambda 2021-11-01 13:03:41 +03:00
Victor Petukhov 4118f3146b Use proper isPlaceholder check for psi type references 2021-11-01 13:03:41 +03:00
Victor Petukhov c8dea3db35 Add test for using underscored type in different positions 2021-11-01 13:03:40 +03:00
Victor Petukhov d1acb09add Report unsupported on using underscored type argument if the corresponding feature is disabled 2021-11-01 13:03:40 +03:00
Victor Petukhov 8a99aa4b42 [FIR] Don't build placeholder projection for types 2021-11-01 13:03:40 +03:00
Victor Petukhov b29aeaa596 [FIR] Implement annotation checker for underscored type arguments 2021-11-01 13:03:37 +03:00
Victor Petukhov 697ef03d57 [FIR] Make FirPlaceholderProjection having source element 2021-11-01 13:03:31 +03:00
Victor Petukhov 5047751b85 [FIR] Support underscored type arguments in the light tree 2021-11-01 12:26:31 +03:00
Victor Petukhov c9fbbe74ae [FIR] Use common isPlaceholder check for type arguments in RawFirBuilder 2021-11-01 12:25:55 +03:00
Victor Petukhov 5508d40371 Put using underscored type arguments under a feature 2021-11-01 12:25:45 +03:00
Victor Petukhov 1073adbbf0 Report unsupported errors on annotations on underscored type arguments 2021-11-01 12:25:14 +03:00
Victor Petukhov 248c9550cd Support type annotations resolution on an underscored type argument 2021-11-01 12:25:10 +03:00
Victor Petukhov b69fb6779f Basic support of partially specified type arguments though a new underscore operator for type arguments
^KT-13394
2021-11-01 12:25:07 +03:00