Commit Graph

93555 Commits

Author SHA1 Message Date
Igor Chevdar 747bff4036 [K/N][caches] Fixed parents for deserialized on demand inline function
#KT-52974 Fixed
2022-07-10 17:56:37 +00:00
Igor Chevdar a61d05971e [box-tests] Added a couple of multi-module box tests 2022-07-10 17:56:36 +00:00
Ilmir Usmanov 5144efc7ae Do not split multimodule inliner tests into modules 2022-07-10 17:56:35 +00:00
Nikolay Krasko f1ad1da9e5 Avoid re-settings d8Plugin.version during import in IDEA
Error:
Could not create task ':js:js.tests:invalidationTest'.
Configuration already finalized for previous property values
2022-07-08 21:34:26 +00:00
Igor Yakovlev a0a66ffb96 [WASM] Refactoring wasm array copy functions 2022-07-08 16:29:45 +00:00
Sebastian Aigner 39844af876 Initial support for enforcedPlatform in Gradle MPP config 2022-07-08 14:35:06 +00:00
Jaebaek Seo ef482bb126 FIR find usage: correctly set extendsList of FirLightInterfaceClassSymbol
The existing code does not set the list of bases that
FirLightInterfaceClassSymbol extends for "extendsList". It collects only
the set of interfaces for "extendsList" of FirLightInterfaceClassSymbol.
However, interfaces can "extend" other classes and/or interfaces, but
they cannot "implement" other interfaces. Therefore, we have to includes
all interfaces and classes that the child interface extends in
the "extendsList". Additionally, this commit adds `private fun
PsiClass.hasSuper(..): Boolean` to FirLightClassBase that returns
whether one of recursive super classes of the PsiClass is `baseClass`
or not. This commit lets `isInheritor()` method use
`PsiClass.hasSuper()`.
2022-07-08 10:36:55 +02:00
Bart van Helvert 21f65b2fe3 KTIJ-22157 Make KtCallError attachment name static 2022-07-07 16:36:04 +00:00
Bart van Helvert 0c50072436 KTIJ-22157 Don't leak user code in unresolved call exception 2022-07-07 16:36:03 +00:00
Igor Yakovlev dab1ec7aff [WASM] Download v8 with D8 gradle plugin and make version property in versions.properties 2022-07-07 16:50:40 +02:00
Nikita Nazarov 939a720686 Add android ignore directives for debug mode tests 2022-07-07 14:51:24 +03:00
Nikita Nazarov 7287be6879 Add tests on variable spilling with debug mode enabled
#KT-48678 Fixed
2022-07-07 14:51:24 +03:00
Nikita Nazarov 2ab92bcb7e Add a key to enable spilling of all variables in a suspending context
This commit adds a new key that will allow users to enhance their
debugging experience in suspending contexts when using the IR backend.
After the key is enabled, the following things are changed:
1. All variables in a suspending context are spilled regardless their
liveness.
2. Their LVT records are not shrunk.
3. ACONST_NULL is not spilled to dead variables.

#KT-48678 In progress

(cherry picked from commit 38d97d0621)
2022-07-07 14:51:24 +03:00
mvicsokolova 6c6717da5a Revert renaming the kotlinx-atomicfu-runtime module 2022-07-07 00:37:06 +02:00
Ilya Kirillov a6b6c79dc2 [PSI] do not throw exception on incorrect expression in KtPsiFactory.createExpressionIfPossible 2022-07-06 23:03:20 +02:00
Igor Yakovlev 0ea7e8b70a [WASM] Add array copy intrinsic 2022-07-06 19:07:56 +00:00
Igor Yakovlev 8306b1bd71 [WASM] Remove deprecated wasm instructions 2022-07-06 19:07:56 +00:00
nataliya.valtman 3b84284743 Add tests for statistic report after build finish 2022-07-06 14:35:19 +00:00
nataliya.valtman 2520ef9232 Add build uuid into build scan 2022-07-06 14:35:18 +00:00
nataliya.valtman 4b0ac511b2 Add configuration_cache tag into statistic 2022-07-06 14:35:17 +00:00
Vladimir Sukharev f8f01941a8 Generate typedef wrappers for nullable inline classes and method args (KT-36878, KT-39015, KT-39496)
Merge-request: KT-MR-6597
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2022-07-06 11:02:16 +00:00
Mikhail Glukhikh 777aa725c9 Add signature cache to FirBasedSignatureComposer 2022-07-06 10:02:12 +00:00
Mikhail Glukhikh e95fe060d6 FIR2IR: don't create signatures also for accessors & constructors 2022-07-06 10:02:12 +00:00
Mikhail Glukhikh 2880cd8d5a FIR2IR: provide more precise conversion type context at some use-sites 2022-07-06 10:02:11 +00:00
Mikhail Glukhikh 517614a190 FIR2IR: remove code duplication from CallAndReferenceGenerator 2022-07-06 10:02:10 +00:00
Mikhail Glukhikh bb0191b7d5 FIR2IR: don't calculate signatures for callables when possible 2022-07-06 10:02:10 +00:00
Mikhail Glukhikh 45eb9238b3 Fir2IrClassifierStorage: don't calculate signature in registerClass 2022-07-06 10:02:09 +00:00
Ilya Goncharov 24c1380b2e Upgrade yarn.lock 2022-07-06 08:44:33 +00:00
Stanislav Erokhin d788a927c4 Change deprecations annotation order on Ranges#endExclusive property
We have [Int|Long|Char]Range classes in 2 different places:
- as separate class-files
- serialized in the kotlin_builtins file

For some reason our Kotlin compiler during the JVM compilation
re-arranging the order of the annotations, so in class file they
will be written in the following order:
- Deprecated
- SinceKotlin
- ExperimentalStdlibApi

But in the kotlin_builtins they will be stored the same way as
in the sources.
We need these 2 way to be synchronized, because stub's in IDE
cares about order.

After this commit IDE test BuiltInDecompilerConsistencyTest is fixed
2022-07-05 19:50:45 +00:00
Dmitriy Novozhilov 509ed69d28 [K1] Get rid of CONSERVATIVE_SET_INCLUSION_SEMANTICS rewrite policy
This policy didn't work in IDE, because trace in IDE always allow rewrites
  to slices

^KT-53072 Fixed
2022-07-05 17:44:25 +00:00
Dmitriy Novozhilov 3ed1221d25 Advance bootstrap to 1.8.0-dev-153 2022-07-05 14:22:41 +00:00
Alexander Korepanov 5b4e9e2966 [JS IR] Fix IC invalidation process when symbols are modified
The patch fixes the cases of IC invalidation when symbols are modified:
 adding and removing inline, data, in, out, suspend qualifiers.

 For that purpose an extra hash is used.
 It is written in a direct dependency graph into an IC cache metadata file.
 For inline functions a transitive hash is used.
 For non-inline functions, classes, and others a symbol hash is used.
 The invalidation routine marks the file as dirty
 (with 'updated imports' state) if hash is modified.

^KT-51083 Fixed
^KT-51088 Fixed
^KT-51090 Fixed
^KT-51099 Fixed
2022-07-05 12:45:43 +00:00
Alexander Korepanov 644447db84 [JS IR] Fix IC invalidation for fake override inline functions
The patch enables the direct dependency between
 fake override inline function and its implementation from the base class.

 Because klibs do not keep a signature of fake override implementation,
 incremental cache can not use the signature index,
 therefore the signature is serialized to a cache file as is.

^KT-51896 Fixed
2022-07-05 12:45:43 +00:00
Nikolay Krasko c6299ee277 Revert "Add a key to enable spilling of all variables in a suspending context"
This reverts commit 38d97d0621.
2022-07-05 11:04:50 +00:00
Nikolay Krasko d080297c20 Revert "Add tests on variable spilling with debug mode enabled"
This reverts commit 65bb6abae4.
2022-07-05 11:04:50 +00:00
Nikolay Krasko c1137d9986 Revert "Set android ignore directives for debug mode tests"
This reverts commit 12e40e7b92.
2022-07-05 11:04:49 +00:00
Ilya Kirillov 3e6de190e7 [Analysis API] update testdata after adding isNoinline/isCrossinline to the KtValueParameterSymbol 2022-07-05 10:34:29 +02:00
Ilya Kirillov 184478858c [Analysis API] add isNoinline/isCrossinline to the KtValueParameterSymbol 2022-07-05 10:34:29 +02:00
Ilya Kirillov 6a145b52aa [Analysis API] update testdata after adding context receivers 2022-07-05 10:34:28 +02:00
Ilya Kirillov 8f89f1b368 [Analysis API] add info about context receivers to the Analysis API 2022-07-05 10:34:28 +02:00
Ilya Kirillov 2f822ab4d9 [k1] add information about context receiver labels to ContextClassReceiver/ContextReceiver 2022-07-05 10:34:28 +02:00
Pavel Kunyavskiy c1ec1d9d4c [K/N] Handle Unit? and Nothing? correctly in finally transformation
^KT-52985
2022-07-05 06:54:29 +00:00
Pavel Kunyavskiy dc48d722fe [K/N] Use common FinallyBlocksLowering for Native 2022-07-05 06:54:27 +00:00
Nikita Nazarov 12e40e7b92 Set android ignore directives for debug mode tests 2022-07-05 09:31:12 +03:00
Yahor Berdnikau 5eebcd92bd Fix using deprecated IsolationMode enum
^KT-46019 Fixed
2022-07-04 15:24:52 +00:00
Yahor Berdnikau 913660ce2b Use destinationDirectory instead of destinationDir in KotlinJvmTarget
^KT-46019 In Progress
2022-07-04 15:24:51 +00:00
Yahor Berdnikau c414b1ba93 Remove deprecated ConfigureUtil usages in KotlinTarget.mavenPublication
^KT-46019 In Progress
2022-07-04 15:24:50 +00:00
Yahor Berdnikau 99c19dc046 Remove deprecated ConfigureUtil usages in KotlinTargetWithBinaries
^KT-46019 In Progress
2022-07-04 15:24:50 +00:00
Yahor Berdnikau 762ed90a80 Remove deprecated ConfigureUtil usages in CocoapodsExtension
^KT-46019 In Progress
2022-07-04 15:24:49 +00:00
Yahor Berdnikau 06c5884d4d Remove deprecated ConfigureUtil usages in CinteropSettings
^KT-46019 In Progress
2022-07-04 15:24:48 +00:00