Igor Chevdar
e16cfd5485
[K/N][IR] Suspend tail call optimization for coroutines
...
Even if a coroutine class has to be built for a suspend function, we
still can perform tail call optimization for it.
2022-11-21 19:32:41 +00:00
Igor Chevdar
b100dfe8be
[K/N][IR] Implemented suspend tail call optimization
...
If for a suspend function all calls to other suspend functions a tail calls,
it is not needed to build the coroutine implementation.
2022-11-21 19:32:40 +00:00
Igor Chevdar
68e6317159
[K/N][tests] Added FileCheck tests on suspend tail call optimization
2022-11-21 19:32:39 +00:00
Jaebaek Seo
c55efe62a3
[AA] handles FIR isUsedAsExpression for return within function block
...
For the following example:
```
fun foo(bar: Int) {
<expr>if (bar == 4) return "Four"
else return "Int"</expr>
}
```
AA FE1.0 `isUsedAsExpression` returns `false`.
Since the current AA FIR `isUsedAsExpression` returns `true` for the
above example, this commit fixes it.
2022-11-21 18:26:41 +01:00
Ilya Kirillov
b6481ed891
[FIR] do not use FirValueParameter for function type parameter
...
As it is a different abstraction, introduced FirFunctionTypeParameter instead
Also, fix syntax checkers for function type parameter
^KT-55035 fixed
2022-11-21 16:17:51 +00:00
Leonid Startsev
1b9fdeadfe
Do not enable serialization plugin intrinsics in K2
...
because they lead to an unbound symbol errors
2022-11-21 16:15:46 +00:00
Leonid Startsev
715a730819
Insert a runtime exception if star-projection type is encountered in serializer<T>() intrinsic
...
This makes behavior consistent with non-intrinsified version of this function and serializer(KType).
#KT-54878 Fixed
2022-11-21 16:15:46 +00:00
Aleksei.Cherepanov
de5fd767d4
Suppress warning for mvn+kapt+jdk9
...
Suppress the warning about lack of tools.jar, as this jar does not present in JDK9+
#KT-47110 Fixed
2022-11-21 15:22:27 +00:00
Jinseong Jeon
f2bc25c71d
SLC: fix visibility/static modifer of property in companion
2022-11-21 15:55:13 +01:00
Jinseong Jeon
e2901c81ac
SLC: populate fields from companion in annotation
2022-11-21 15:55:12 +01:00
Sebastian Sellmair
f02fd2e04e
[Gradle] Implement smoke test for external android target prototype resolving sdk
...
KT-54981
2022-11-21 14:11:27 +00:00
Sebastian Sellmair
83af85706d
[Gradle] ExternalKotlinTarget Api: Implement 'configureIdeImport' API
...
^KT-55010 Verification Pending
2022-11-21 14:11:27 +00:00
Yahor Berdnikau
19f4e39ee7
Fix toolchain test fails jvm target validation
...
Happens after changes for KT-54933 was merged earlier than for KT-55004.
2022-11-21 14:59:01 +01:00
Anna Kozlova
f937a85fb8
[tests] split by FILE directive to avoid artificial errors
...
during parsing psi
2022-11-21 13:07:14 +01:00
Sebastian Sellmair
17c20bff92
[Gradle] Implement integration test for KT-54981
...
^KT-54981 Verification Pending
2022-11-21 10:14:04 +00:00
Sebastian Sellmair
55ef9a6bad
[Gradle] Only add 'directly included' source sets to metadata compile tasks
...
Contrary to platform compilations, metadata based compile tasks
are expected to only compile the directly associated source sets w/o
their dependsOn closure. DependsOn source sets will be represented
as .klib binary dependencies instead.
^KT-54981 Verification Pending
2022-11-21 10:14:04 +00:00
Roman Efremov
9330018390
Add comment with reference to K2 implementation of opt-in check
...
^KTIJ-23369 Fixed
2022-11-21 13:09:40 +03:00
Yahor Berdnikau
f6dd302dc7
Fix child default toolchain configuration overwrites parent one
...
Caused by configure actions ordering - parent are applied first.
^KT-55004 Fixed
2022-11-21 09:53:19 +00:00
Mikhail Glukhikh
1d76bce3dd
K2: fix outerClassSymbol behavior for local classes #KT-55018 Fixed
2022-11-21 09:23:54 +00:00
Nikolay Lunyak
fb09f139dd
[FIR] Unmute receiver annotations tests
...
These tests were muted in 89f8821d . Seems they began to work after the
introduction of `FirReceiverParameter` in KT-54417.
2022-11-21 08:51:43 +00:00
Sebastian Sellmair
bc531610f7
[Gradle] ExternalKotlinTarget Api: Add initial APIs to configure publications
...
KT-54981
2022-11-21 07:33:17 +00:00
Sebastian Sellmair
c33b172988
[Gradle] Introduce InternalKotlinTarget
...
KT-54981
2022-11-21 07:33:17 +00:00
Sebastian Sellmair
e5398e6be7
[Gradle][Minor] Move KotlinTargetComponent into separate source file
...
KT-54981
2022-11-21 07:33:17 +00:00
Sebastian Sellmair
7368752c24
[Gradle] ExternalKotlinTargetApi: Configure apiElements and runtimeElements configurations
...
KT-54981
2022-11-21 07:33:16 +00:00
Igor Yakovlev
c8306f1a3b
[Wasm] Mark rotate functions with WasExperimental
2022-11-19 11:49:06 +01:00
vladislav.grechko
5ec2f1ad92
Get rid of redundant boxing when comparing inline class instances
...
^KT-33722: Fixed
2022-11-18 23:14:03 +00:00
Anna Kozlova
e5ce32feeb
[ANALYSIS API] introduce dedicated KtCall for incomplete code
...
KTIJ-23505 and duplicates
2022-11-18 20:59:31 +01:00
Artem Kobzar
725a224f74
[K/JS] Make available transitive reexport for ES modules
2022-11-18 16:54:10 +00:00
Zalim Bashorov
d2b63c8c31
[Wasm] Use common logic for eqeq and eqeqeq
...
So, now it generates better code when null literals are passed to `eqeqeq`,
same as for `eqeq`.
2022-11-18 17:30:11 +01:00
Zalim Bashorov
96b02c9b66
[Wasm] Minor: move part of code of eqeqSymbol processing in BuiltInsLowering
2022-11-18 17:30:11 +01:00
Zalim Bashorov
0529ba9a87
[Wasm] Extract common some logic of eqeqSymbol processing in BuiltInsLowering
2022-11-18 17:30:10 +01:00
Zalim Bashorov
919029f34f
[Wasm] Add fast path for null in externRefToAny
...
- Introduce new intrinsics `wasm_ref_cast_null` & `wasm_ref_test_null`.
- Support getting type for immediate from generic argument.
- Remove redundant null check in `tryGetOrSetExternrefBox`.
2022-11-18 17:30:10 +01:00
Alexander Shabalin
b31a657494
[K/N] Add test support modules to runtime tests ^KT-53776
...
Previously all modules in a test group would also link in their tests.
This is not ideal. For example, an experimental module M depending on
module N might not yet implement enough functionality to run all Ns
integration tests, but we still want to run Ms unit tests.
Now, there's a separate `testSupportModules` list. For each module their
main sources and test support sources will get linked into the test
group, but the tests will not.
Merge-request: KT-MR-7731
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com >
2022-11-18 16:11:37 +00:00
Andrei.Tyrin
0df7e689d9
[Gradle][MPP] MPP/AGP compatibility: Bump maxSupportedVersion to 7.4
...
^KT-54982 Verification Pending
2022-11-18 14:57:36 +00:00
Andrei.Tyrin
cc0bd8e57a
[MPP] Prettify the message about incompatible AGP and KGP versions
...
add protocol for youtrack link, quote flag
^KT-53338 Fixed
2022-11-18 14:57:36 +00:00
Svyatoslav Scherbina
69dccec6ca
Bump Kotlin/Native version to 1.8.20-dev-2653
2022-11-18 12:11:18 +00:00
Stanislav Erokhin
efdfcdff63
Update CODEOWNERS for /libraries/tools/kotlin-gradle-* folders
2022-11-18 12:09:05 +00:00
Yahor Berdnikau
e07e92c945
Raise 'kotlin.jvm.target.validation.mode' default value to 'error'.
...
Now target check intentionally runs always - even when Java sources are
empty. Java part configures publication 'org.gradle.jvm.version'
attribute which affect published artifact consumers and should be the
same as Kotlin jvmTarget value.
^KT-54993 Fixed
2022-11-18 10:42:00 +00:00
Egor Kulikov
877e11419e
Stub updates for RawFirBuilder
...
First step for KT-52615
2022-11-18 11:40:09 +01:00
Sergej Jaskiewicz
becbc06663
[JS] Re-enable some stepping tests
2022-11-18 10:37:58 +00:00
Sergej Jaskiewicz
932e1a3c1d
[JS] Re-run stepping tests if they fail because of a Node crash
...
KT-54283
2022-11-18 10:37:58 +00:00
Yahor Berdnikau
53adf097c2
Exclude Kotlin Gradle Plugins test data from to be owned by infra team
2022-11-18 09:50:02 +00:00
Ilya Gorbunov
59131f8138
Use BCV plugin to dump and check public API of Kotlin Gradle plugin-related artifacts
2022-11-18 06:00:18 +00:00
Ilya Gorbunov
49bd4e672b
Drop dump of the obsolete kotlin-coroutines-experimental-compat artifact
2022-11-18 06:00:17 +00:00
Ilya Gorbunov
d8e8c6afb3
Update BCV library version in reference public api test and update dumps
...
There were two problems in BCV fixed:
- https://github.com/Kotlin/binary-compatibility-validator/issues/36
- https://github.com/Kotlin/binary-compatibility-validator/issues/58
Therefore some methods with default values and properties that
mistakenly wasn't included in the dump, now have appeared in it.
2022-11-18 06:00:17 +00:00
Mikhail Glukhikh
d41c1e7e99
Code cleanup: ExpectedActualResolver
2022-11-17 22:28:04 +00:00
Mikhail Glukhikh
82f1535007
K1: fix IIOBE in expect-actual checker with different type parameter number
...
#KT-54827 Fixed
2022-11-17 22:28:04 +00:00
Marco Pennekamp
c5e5140c08
[Analysis API] Fix exceptions around type parameters being treated as callables
...
- `toResolvedCallableSymbol`: cast defensively because
the resolved symbol might not be a callable symbol.
- `toKtCallInfo`: Check that the resolved symbol is actually callable.
^KTIJ-23003 fixed
2022-11-17 18:58:38 +00:00
Sergey Bogolepov
170c19d293
[K/N] Update SDK versions for iOS/watchOS/tvOS
2022-11-17 17:37:14 +00:00
Sergey Bogolepov
c465d8248c
[K/N] Update macOS SDK to Xcode 14.1
2022-11-17 17:37:13 +00:00