Denis.Zharkov
0aa8181960
FIR: Rename AbstractFirDeserializedSymbolsProvider -> AbstractFirDeserializedSymbolProvider
2021-09-23 16:58:25 +03:00
Denis.Zharkov
54a97a860a
FIR: Minor. Rename JavaClassConverter -> FirJavaFacade
2021-09-23 16:58:24 +03:00
Denis.Zharkov
9902d36d57
FIR: Minor. Rename
2021-09-23 16:58:24 +03:00
Denis.Zharkov
1fc2f13a35
FIR: Pull creation of JavaClassConverter to session factory
2021-09-23 16:58:22 +03:00
Vyacheslav Gerasimov
b6e3399cbd
Build: Add missing verification metadata for httpcore 4.2.1
...
We apply prepareSonatypeStaging.gradle conditionally which brings some
additional dependencies only during release publishing to maven central
#KTI-650
(cherry picked from commit 3f1c3ea6707210c2bcc0d9209682e45a6efceef3)
2021-09-23 15:10:50 +02:00
Alexander Shabalin
da25e1bf21
[K/N] Enable a missing test
2021-09-23 12:57:29 +00:00
Hung Nguyen
aea693e309
KT-45777: Ignore faulty groovy-2.5.11 jar
...
Test: The following should pass
- Step 1: ./gradlew publish
- Step 2: ./gradlew publish compileTestKotlin -Pbootstrap.local=true
-Pbootstrap.local.path=/path/to/kotlin/build/repo
-Pkotlin.incremental.useClasspathSnapshot=true
2021-09-23 12:51:06 +03:00
Hung Nguyen
a6d0fcc676
KT-45777: Support compile avoidance
...
Test: Updated existing incremental compilation integration tests
2021-09-23 12:51:03 +03:00
Hung Nguyen
f400305cc6
KT-45777: Handle problematic classes when taking snapshots
...
There are certain classes that we are not yet able to take snapshots of,
either because the class is faulty, or there is a bug in our code.
For these classes, we will use a special snapshot and fall back to the
existing approach to compute classpath changes.
In the short run, we will update this list of cases as they arise. In
the long run, we will:
- Fix all cases that are caused by bugs in our code.
- Decide what to with the faulty jars in general and remove the list.
Test: The following should pass
- Step 1: ./gradlew publish
- Step 2: ./gradlew publish -Pbootstrap.local=true
-Pbootstrap.local.path=/path/to/kotlin/build/repo
-Pkotlin.incremental.useClasspathSnapshot=true
2021-09-23 12:47:51 +03:00
Pavel Kunyavskiy
fb875c484d
[K/N] Implement instantiating of annotation class
2021-09-23 06:59:34 +00:00
Pavel Kunyavskiy
a40022efcd
Generate IR for annotation class constructors.
2021-09-23 06:59:33 +00:00
Pavel Kunyavskiy
773c82ae48
Refactor AnnotationImplementationLowering
...
- Replaced UNDEFINED_OFFSET with SYNTHETIC_OFFSET, it's required by
Native backend codegen
- Fixed missing overridden symbols
- Enforce adding fakeoverrides for members not overridden by backend
- Support more points for platform customisation
2021-09-23 06:59:32 +00:00
Jinseong Jeon
d9424fa092
FIR IDE/LC: rename origin of constant values
2021-09-23 00:11:26 +02:00
Jinseong Jeon
d3d3aeacb4
FIR IDE: make compile-time constant evaluator an object
...
because it doesn't have any states.
2021-09-23 00:11:26 +02:00
Jinseong Jeon
414881403b
FIR IDE: handle annotation array values properly
2021-09-23 00:11:26 +02:00
Jinseong Jeon
ffd0a5ed14
FIR IDE: make constant values symbol-free
2021-09-23 00:11:26 +02:00
Jinseong Jeon
f94dad7005
FIR IDE: migrate annotation parameter conversion util
2021-09-23 00:11:26 +02:00
Jinseong Jeon
0f16a2cb92
FIR IDE: rename some of constant values for consistency
2021-09-23 00:11:25 +02:00
Jinseong Jeon
ce445700b8
FIR IDE: split conversion utils for KtConstantValue to its own object
2021-09-23 00:11:25 +02:00
Jinseong Jeon
4c8d975ae5
FIR LC: handle more kinds of annotation values
2021-09-23 00:11:25 +02:00
Jinseong Jeon
6ef2dad895
FIR IDE: more comprehensive abstractions of annotation values
2021-09-23 00:11:25 +02:00
Jinseong Jeon
fe41c4513f
LC: weaken condition to lookup nested annotation
...
FIR LC has a different abstraction, so using the specific class name is
literally too specific to FE 1.0 LC.
We could introduce a common interface for those, but checking
`kotlinOrigin` is good enough, and thus type-checking their common
ancestor is good enough too.
2021-09-23 00:11:25 +02:00
Jinseong Jeon
744961bd00
FIR IDE: test resolution of various annotation values
2021-09-23 00:11:25 +02:00
Jinseong Jeon
150f066254
FIR LC: use property modifiers for backing field if lateinit
2021-09-23 00:11:25 +02:00
Svyatoslav Kuzmich
a2bfcfeae8
[Wasm] Do not erase interfaces down to Any type in Wasm signature.
...
This enables overloading virtual methods with different interface types
2021-09-22 19:49:44 +03:00
Svyatoslav Kuzmich
6db7154876
[Wasm] Build bridges for non-virtual functions that implement interfaces
2021-09-22 19:49:43 +03:00
Steven Schäfer
1eb9a5a86d
JVM IR: Don't generate bridges for default argument stubs (KT-46389)
2021-09-22 18:45:54 +02:00
Ilya Gorbunov
40b5a7d449
Provide infix compareTo extension for Comparable<T> #KT-46423
2021-09-22 15:56:27 +00:00
Tianyu Geng
44e0efc23c
FIR: fix run config after Analysis API refactoring
2021-09-22 15:47:13 +02:00
Abduqodiri Qurbonzoda
eccd035881
Upgrade kotlinx-html-js version to 0.6.12 in gradle plugin tests because of #KT-24782
2021-09-22 12:56:12 +00:00
Steven Schäfer
cb46a56815
Parcelize: Support unsigned array types
...
See https://issuetracker.google.com/200774823
2021-09-22 13:42:04 +02:00
Steven Schäfer
2501013012
Parcelize: Support ShortArray
...
ShortArrays are broken in the Parcelize JVM backend, which caused a
frontend error on the JVM IR backend.
2021-09-22 13:42:04 +02:00
Leonid Startsev
f033d3d5b7
Remove ignored dexing in tests after it was fixed
...
by rewriting IR codegen (https://github.com/JetBrains/kotlin/pull/3986/files#diff-9fe05d2f7c421d566cd1294a191d5a2e8f6e6f7a5f6b638542b79369caf91d4eR454 )
2021-09-22 11:41:13 +00:00
Yahor Berdnikau
24d088242c
Use JVM toolchain for buildSrc module.
...
Before this change buildSrc module was compiled with current user JDK.
For example on CI it is JDK 1.8. But when the user is using JDK
different from 1.8, buildSrc compilation misses remote build cache. This
may lead to full project recomplilation on the user side.
2021-09-22 11:35:07 +00:00
Ilya Kirillov
d3dd9cd078
Analysis API: add KDoc to providers
2021-09-22 12:57:18 +02:00
Ilya Kirillov
fb8044641b
LL API: move DeclarationCopyBuilder out of public API
2021-09-22 12:57:16 +02:00
Ilya Kirillov
7c0a9230fd
LL API: remove empty files
2021-09-22 12:57:16 +02:00
Ilya Kirillov
083dcc4ec6
Analysis API: refactoring, separate AbstractCompilerBasedTest.kt into multiple files
2021-09-22 12:57:15 +02:00
Ilya Kirillov
678b931ba3
Analysis API: introduce Project Structure
2021-09-22 12:57:14 +02:00
Svyatoslav Scherbina
c9348b3512
Native: improve "could not build module" cinterop error message
...
Extract diagnostics from imported modules by instructing libclang to
serialize diagnostics to file. Then deserialize this file and use
first compilation errors in the error message.
^KT-35059 Fixed
2021-09-22 07:31:23 +00:00
Svyatoslav Scherbina
12f4cd5aa1
Native: add unit tests for modules support in Interop/Indexer
2021-09-22 07:31:22 +00:00
Svyatoslav Scherbina
fb81ae0cd1
Native: fix deadlock in kotlinx.cinterop.typeOf impl for JVM
...
Don't use ConcurrentHashMap.computeIfAbsent for typeOf cache,
because the computation may call typeOf recursively for different type
(e.g. C enum var type computation calls typeOf for enum base integer type),
which might cause a deadlock in computeIfAbsent.
2021-09-22 07:31:22 +00:00
sebastian.sellmair
a279f682bb
[Commonizer] Add additional documentation to ClassOrTypeAliasTypeCommonizer
...
^KT-48288
2021-09-22 06:45:12 +00:00
sebastian.sellmair
6d17e4da57
[Commonizer] Implement disabled tests for ^KT-48288
...
^KT-48288
^KT-48850
2021-09-22 06:45:11 +00:00
sebastian.sellmair
104d2b347b
[Commonizer] Minor: CirType: Use copyInterned over createInterned
...
^KT-48288
2021-09-22 06:45:11 +00:00
sebastian.sellmair
3b67bcbf4d
[Commonizer] ClassOrTypeAliasTypeCommonizer: Remove faulty argument substitution
...
Underlying types from CirTypeAliasType do not require
parent argument replacement.
^KT-48288
2021-09-22 06:45:11 +00:00
sebastian.sellmair
7bf62ab159
[Commonizer] Implement tests for 'crossed' type aliases
...
^KT-48288
2021-09-22 06:45:10 +00:00
sebastian.sellmair
1fca19258d
[Commonizer] ParameterizedTypesCommonizationTest: Remove unnecessary symbols
...
^KT-48288
2021-09-22 06:45:10 +00:00
sebastian.sellmair
fa2577dda8
[Commonizer] Improve performance of deserialization
...
^KT-48288
2021-09-22 06:45:09 +00:00
sebastian.sellmair
16bf5f3df3
[Commonizer] Improve performance of ClassOrTypeAliasTypeCommonizer
...
Performance is improved by reducing calls to 'backwardsTypeDistance'
^KT-48288
2021-09-22 06:45:09 +00:00