Commit Graph

94908 Commits

Author SHA1 Message Date
Sergey Bogolepov 0b4a4ca42b [K/N] AArch64 watchOS target 2022-09-18 08:58:21 +00:00
Ilya Gorbunov 75e1effbc5 Make Optional extensions stable since 1.8
KT-51907, KT-53277
2022-09-17 22:52:46 +00:00
Ilya Gorbunov b76854eddf Simplify signatures of Optional extensions getOrDefault and getOrElse
Two generic types are not need to cover the same use cases.

KT-50484
2022-09-17 22:52:46 +00:00
Ilya Gorbunov 0251d432e9 Do not commit to vcs protoeditor.xml settings 2022-09-17 15:21:50 +00:00
Jinseong Jeon efb867b46c AA: do not create symbol pointers for (intersection|substitution) overridden members 2022-09-17 16:43:12 +02:00
Jinseong Jeon e50da634bc AA: add tests for resolution to built-ins 2022-09-17 16:43:12 +02:00
Jinseong Jeon c7347cfb48 LL FIR: module kind for built-ins module 2022-09-17 16:43:11 +02:00
Jinseong Jeon f9e086a6e3 S/LC: avoid building light classes for decompiled built-ins 2022-09-17 16:43:11 +02:00
Jinseong Jeon 0b63f294ab LL FIR: remove unnecessary type cast
For compiled symbol, it can be either library or built-ins session
2022-09-17 16:43:11 +02:00
Jinseong Jeon 7529965619 LL FIR: cache built-ins module to session 2022-09-17 16:43:11 +02:00
Jinseong Jeon c2daa26118 AA: use fully decompiled file when indexing built-ins 2022-09-17 16:43:10 +02:00
Jinseong Jeon 5bf333f6f5 AA: look up built-ins module for deserialized declarations from built-ins 2022-09-17 16:43:10 +02:00
Jinseong Jeon df95602e06 AA: populate index for built-ins 2022-09-17 16:43:10 +02:00
Alexander Shabalin 529a29ae52 [K/N] Use TargetDomainObjectContainer ^KT-53776
Merge-request: KT-MR-7110
Merged-by: Alexander Shabalin <Alexander.Shabalin@jetbrains.com>
2022-09-17 08:40:09 +00:00
Sergey Bogolepov ad9de1f8c4 [K/N]Split CoreFoundationBase and CFCGTypes from CoreFoundation
Ugly hack to keep Kotlin ABI of CGPoint and its friends.
In *OS (except macOS) SDKs Apple moved CGPoint and some other
fundamental types from CoreGraphics to CoreFoundation in a way
which breaks ABI for K/N platform libraries. To mitigate this
problem we split CoreFoundation platform library into several
smaller ones.
2022-09-17 07:51:36 +03:00
Sergey Bogolepov ff526e6c28 [K/N] Move ptrauth.h from CoreFoundation to a more proper namespace 2022-09-17 07:51:36 +03:00
Sergey Bogolepov 9ec8576c5e [K/N] update iOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov df48b24631 [K/N] Update watchOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 176f9335eb [K/N] Update tvOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 7f78f806d4 [K/N] update macOS platform libs for Xcode 14 2022-09-17 07:51:35 +03:00
Sergey Bogolepov dde1dcc760 [K/N] Fix defFileDependencies 2022-09-17 07:51:35 +03:00
Sergey Bogolepov 5f847ac40d [K/N] Add workaround for NS_FORMAT_ARGUMENT(A)
See KT-48807 for explanation
2022-09-17 07:51:34 +03:00
Sergey Bogolepov 5c1641430c [K/N] Bump Xcode version in README.md 2022-09-17 07:51:34 +03:00
Sergey Bogolepov 183686659e [K/N] Bump Xcode SDK versions 2022-09-17 07:51:34 +03:00
Sergey Bogolepov 8bf7a17508 [K/N] Update Xcode version to 14-RC 2022-09-17 07:51:34 +03:00
Sergey Bogolepov 95e83d064d [K/N] Bump Xcode major version to 14 2022-09-17 07:51:34 +03:00
Abduqodiri Qurbonzoda dce62275c6 Fix daemon-common-new compile 2022-09-17 01:06:56 +00:00
Abduqodiri Qurbonzoda f2b0c30cba Remove Experimental and UseExperimental from compiler OptIn usage checkers 2022-09-17 01:06:56 +00:00
Alexander Likhachev bc684b8d36 [Gradle] Add missing kotlin-multiplatform tasks descriptions
#KT-31573 Fixed
2022-09-16 23:33:35 +02:00
Mads Ager b7a7fce34e Add suspend lambda annotations to invokeSuspend.
For non-suspend lambdas annotations are carried over to the
invoke method so that tooling can find the annotation there.
It seems reasonable that annotations are carried over to
the invokeSuspend method on suspend lambdas as well so that
similar tooling can be built and work for suspend lambdas.
2022-09-16 23:21:18 +02:00
Simon Ogorodnik 8bdb8ba232 K2: Fix type-alias expansion during suspend function type serialization
When suspend function type is serialized, there is special logic that
adds Continuation parameter, before doing so, type-aliases has to be
expanded, attributes for resulting type should also derive from
expanded type

KT-53193, KT-54062
2022-09-16 20:42:03 +00:00
Sergey Bogolepov 3f406044a6 [K/N] Tests for DefFile.excludeFilter property 2022-09-16 19:22:38 +00:00
Sergey Bogolepov b4b27e9bc6 [K/N] KT-54001
Add a new DefFile.excludeFilter property that excludes headers
from interop library by given glob.

This change is required to properly support platform libs from Xcode 14
without breaking ABI.
2022-09-16 19:22:38 +00:00
Alexander Likhachev 6bc9c43952 [Gradle] Cover SingleAction hierarchy by KDoc 2022-09-16 17:15:35 +00:00
Alexander Likhachev 3d45bcf08d [Gradle] Cover KT-50598 by tests 2022-09-16 17:15:35 +00:00
Alexander Likhachev a20fbf867f [Gradle] Recreate KotlinPluginInMultipleProjectsHolder on each build
#KT-50598 Fixed
2022-09-16 17:15:34 +00:00
Johan Bay 4b92d2e76c Add OnSuspendForGC hook to GCImpl::ThreadData
Co-authored-by: Johan Bay <jobay@google.com>

Merge-request: KOTLIN-MR-506
Merged-by: Alexander Shabalin <alexander.shabalin@jetbrains.com>
2022-09-16 14:43:54 +00:00
Leonid Startsev c8647841dc Added documentation for MagicApiIntrinsics.voidMagicApiCall
Remove mavenLocal() from repos
2022-09-16 14:34:30 +00:00
Leonid Startsev 69c00785f2 Support plugin-defined instrinsics that can be non-typeOf operation types. 2022-09-16 14:34:30 +00:00
Leonid Startsev 033538161e Determine more precise conditions when to enable serialization intrinsic
Disable it if we do not have required `noCompiledSerializer` function in
runtime. Leave it enabled in tests.

Rollback some changes for old backend as it is unsupported now.
2022-09-16 14:34:30 +00:00
Leonid Startsev 637e8c7d8a Provide feature-flag to disable intrinsics in serialization plugin 2022-09-16 14:34:29 +00:00
Leonid Startsev ad2adadb36 Remove OperationType.PLUGIN_DEFINED type:
instead, plugins should emit the code similar to the TYPE_OF one with
a special call to MagicApiIntrinsics.voidMagicApiCall directly afterwards.

This is required because old compiler need to correctly inline code
rewritten by plugin.
2022-09-16 14:34:29 +00:00
Leonid Startsev 763303fe97 Refactor extensions for plugin intrinsics entry points
so platform-specific parts won't have unsafe downcasts.
2022-09-16 14:34:29 +00:00
Leonid Startsev eae588abea Improve line numbers handling in serialization intrinsic
Fix nullable serializers on top-level & method with incorrect receiver

Improve handling of different runtime versions
2022-09-16 14:34:29 +00:00
Leonid Startsev aac9a06474 Also support intrinsification for SerializersModule.serializer<T>()
method that fallbacks to module.getContextual().
2022-09-16 14:34:28 +00:00
Leonid Startsev a59f5f407b Introduce support for plugin-defined intrinsics in JVM IR backend:
Add intrinsic for kotlinx.serialization.serializer<T>() function.

Plugin intrinsic for old backend is removed because it is too hard
and unjustifiable to unify them.
2022-09-16 14:34:28 +00:00
Leonid Startsev f9edbd825a Introduce support for plugin-defined intrinsics in old JVM backend:
(Old is created first because all intrinsics emit bytecode anyway)

Provide intrinsic for serializer<T>() function so it won't
invoke typeOf() construction and KType->KSerializer conversion
making it fast and truly reflectionless

Add support for recalculating stack size in plugin-defined intrinsics
since it is needed for correct work:
Unify method for recalculating stack size with existing typeOf intrinsic

Add testdata for IR for future intrinsic in IR
2022-09-16 14:34:28 +00:00
Igor Yakovlev 842f94443a [WASM] Kotlin gradle plugin support Apple ARM for binaryen and D8 extensions 2022-09-16 14:22:55 +00:00
Sergey Bogolepov a88ef04671 [K/N] Turn back red code.
For some reason build is failing during publication
with the previous change. Will deal with it later.
2022-09-16 13:25:41 +00:00
Sergey Bogolepov 6de5671db8 Revert "Revert "[K/N] Convert StubGenerator build script to Kotlin""
This reverts commit b53d6d0d7e.
2022-09-16 13:25:41 +00:00