Vsevolod Tolstopyatov
c0f81cbc45
[JVM] Improve code coverage of EntriesMapping
...
Ensure that when .entries is accessed from an inline function body
or lambda argument, EntriesMapping are properly generated and used
without excessive mappings and duplicated fields
#KT-53236
2022-08-12 09:35:24 +00:00
Pavel Mikhailovskii
8ba80b4b7b
KT-1436 Allow break/continue in inlined lambdas
2022-08-11 10:38:23 +00:00
Pavel Kunyavskiy
18cda8844d
[K/N] Fix possible data races found by thread sanitizer
2022-08-10 08:36:07 +00:00
Artem Kobzar
87038e7d8a
[K/JS] feat: add logic under the flag for strict implicit export generating inside d.ts files.
2022-08-09 16:48:59 +00:00
Alexander Korepanov
bb8da65188
[Common IR] Do inlining of callable references of inline functions
...
^KT-52805 Fixed
2022-08-08 17:40:45 +00:00
Pavel Kunyavskiy
3424e756ad
[K/N] Fix for instantiating annotations from already lowered file
...
If annotation class is already lowered, it can have more than one
constructor. So we should use primary one, not any one.
^KT-53475
2022-08-08 16:35:22 +00:00
Alexander Korepanov
794229d012
[box-tests] Add tests about anonymous classes uplifting
...
^KT-50175 Fixed by commits before
2022-08-08 08:39:59 +00:00
Igor Chevdar
e38f02b53a
[box-tests] Added a bunch of tests on local objects in inline lambdas
2022-08-08 08:39:57 +00:00
Igor Chevdar
7090a2716a
[box-tests] Made test Native-specific
...
Seems like other backends don't like top level lateinit properties
2022-08-07 08:23:41 +03:00
Igor Chevdar
6799988227
[box-tests] Added a multi-module test on lateinit properties
2022-08-06 17:40:27 +00:00
Vsevolod Tolstopyatov
14b13a2f17
[kotlin.reflect] Introduce ClassValue-based cache for KClassImpl
...
* Replace pcollections with ClassValue/ConcurrentHashMap-based caches
* Do not store weak references, instead cache strong references and count on ClassValue to unload the corresponding classloader if necessary
* ConcurrentHashMap does not rely on WeakReference as it's only selected on Android where classloader leaks don't exist
* Update reflect/scripting JDK requirement to Java 8 in order to proceed
#KT-53454
#KT-50705
Merge-request: KT-MR-6788
Merged-by: Vsevolod Tolstopyatov <qwwdfsad@gmail.com >
2022-08-05 15:35:34 +00:00
Dmitry Gridin
4ceb170917
regenerate tests
2022-08-05 14:12:41 +02:00
Sergej Jaskiewicz
2ece4f4dbf
[JS IR] Improve the precision of execution of stepping tests
2022-08-05 11:53:40 +00:00
Ilya Gorbunov
f91ea4b4d9
Add more tests for 'contains' in ranges #KT-52933
...
- ranges produced by 'rangeUntil' operator
- ranges of unsigned values
- more elements in ranges produced by `downTo`
2022-08-03 22:18:14 +00:00
Artem Kobzar
b9a80284c8
[K/JS] fix(TS): save type hierarchy for exported classes.
2022-08-03 14:16:30 +00:00
Steven Schäfer
03aee58585
JVM IR: Avoid IrComposite in ReturnableBlockLowering (KT-53202)
2022-08-03 00:19:31 +02:00
Artem Kobzar
0cef573a7b
[K/JS] test(@JsExport): add few more tests on export after ExportModel discussion meeting.
2022-08-01 12:17:35 +00:00
Artem Kobzar
b9189be728
[K/JS] fix(KT-46643): prevent removal of setter for overridden external field.
2022-07-29 12:41:17 +00:00
Steven Schäfer
6f0ff6aeb0
IR: Fix scope transparency in ReturnableBlockLowering
...
An IrReturnableBlock introduces a new variable scope and shouldn't be
replaced with a transparent IrComposite block.
2022-07-29 01:06:44 +02:00
Igor Chevdar
8981eb85de
[box-tests] Added a couple of reproducers for KT-52795
2022-07-28 16:01:17 +00:00
Alexander Korepanov
caa1570e25
[JS IR] Fix clashes between bridge and delegated function call
...
The patch fixes the js function signature rules to avoid clashes
between bridge and delegated call. Use overridden symbols dfs of
JsName annotation in order to get the correct bridge name.
^KT-52968 Fixed
2022-07-28 14:41:47 +00:00
Alexander Korepanov
6525f7a7ac
[JS IR] Fix a IC dependency building for class methods.
...
The patch fixes lost IC dependencies for inherited class or interface methods.
Especially between a fake override function and its implementation.
Since IrSymbolDeserializer doesn't provide all class methods,
they are collected from the class definitions.
^KT-53063 Fixed
2022-07-28 12:39:39 +00:00
Ilya Gorbunov
1addc23b23
Add range iteration tests for rangeUntil
...
#KT-52932
2022-07-26 23:52:10 +00:00
Sergej Jaskiewicz
dbcffeb0ed
[JS] Fix a compiler crash when generating sourcemaps
...
It is possible that the source info has the type `KtPureElement`.
For example, the serialization plugin may create a synthetic companion
object for a `@Serializable`-annotated class.
This results in an instance of
the `SyntheticClassOrObjectDescriptor.SyntheticDeclaration` class being
indirectly set as source info. This class implements the `KtPureElement`
interface.
2022-07-25 19:27:59 +00:00
Alexander Korepanov
0982872959
[JS IR] Fix clash between generic extension overloads
...
Type parameter constraints are used for calculating JS signature hash.
^KT-51151 Fixed
2022-07-22 16:14:51 +00:00
Victor Petukhov
42e71f8c53
Remove explicit enabling the new type inference from test data
2022-07-22 16:03:52 +00:00
Nikolay Krasko
683322e45a
Explicit restriction for maximum memory in js box tests
...
There were failures during jsCompilerTest execution on the machine
with 16GB and 8 CPU.
2022-07-21 15:47:30 +00:00
Sergej Jaskiewicz
54c2839a7f
[JS] J2K for SourceMapBuilderConsumer
2022-07-21 12:18:43 +00:00
Sergej Jaskiewicz
9f5f5bcab2
Rename .java to .kt
2022-07-21 12:18:43 +00:00
Svyatoslav Kuzmich
11c8c01a50
[Wasm] Update v8 shell to v10.5.207
2022-07-19 18:46:52 +02:00
Sergej Jaskiewicz
15bd101110
[JS IR] Fix sourcemap path mapping in compiler tests for Windows
2022-07-19 16:06:25 +00:00
Sergej Jaskiewicz
ea556ce428
[JS IR] Implement stepping tests for Kotlin/JS
...
We already have stepping tests for Kotlin/JVM.
They are helpful for testing the correctness of the generated
debugging information.
They are better than line number tests in that they allow to test the
_behavior_, not the generated data. The structure of the data may change
even if the behavior stays the same. For that reason, stepping tests
are more stable.
2022-07-19 16:06:23 +00:00
Kristoffer Andersen
f0bc021b5e
Change VARIABLE_REASSIGNMENT slice so it composes properly
2022-07-18 23:50:35 +02:00
Dmitriy Dolovov
ce04a24b26
[IR][tests] Removal of class used as variable type and constructor call
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
d5ded97ccb
[IR][tests] Removal of inlined class case
...
^KT-52478
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov
7b5e33b6ca
[IR][tests] Add tests for removal-of-typealias case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
89a188d199
[IR][tests] Add tests for remove-inlined-callable member case
2022-07-18 17:29:49 +02:00
Dmitriy Dolovov
9c1c712057
[IR][tests] Add tests for removal-of-overridden open callable case
2022-07-18 17:29:49 +02:00
Artem Kobzar
1557f919f5
chore: split huge declarations.d.ts test on few smaller tests.
2022-07-18 12:59:21 +00:00
Steven Schäfer
8014712569
JVM IR: Check that we generate callable references in tests
2022-07-14 23:24:18 +02:00
Artem Kobzar
117df325c9
[JS/IR] fix: add ability to render type constraints into TypeScript definitions.
2022-07-13 15:20:27 +00:00
Pavel Kunyavskiy
5cdda48487
[K/N] Extract const val initializers to place of usage
...
This would make behaviour more consistent with jvm. There is still
a difference in behaviour about point where side effects happen.
^KT-52970
2022-07-13 08:49:40 +00:00
Igor Chevdar
e36bd5fe90
[box-tests] Added a multi-module box test
2022-07-13 08:01:51 +00:00
Vladimir Sukharev
a9789203ac
Run test genericFunctionReferenceSignature.kt only for JVM and native
...
Merge-request: KT-MR-6636
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-07-12 13:07:14 +00:00
Vladimir Sukharev
fd52f475cb
Devirtualization fails to eliminate boxing in function reference context
...
^KT-49847 Fixed
Merge-request: KT-MR-6460
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-07-12 08:26:27 +00:00
Victor Petukhov
7d945d9bdc
[FIR] Support loading rxjava3 nullability annotations on bounded wildcards
...
^KT-53041 Fixed
2022-07-11 12:44:08 +00:00
Victor Petukhov
cb2dbca0c3
[FE 1.0] Support loading rxjava3 nullability annotations on bounded wildcards
...
^KT-53041 Fixed
2022-07-11 12:44:07 +00:00
Victor Petukhov
2057deb91b
[FE 1.0] Create DONT_CARE type only for callable references with no expected type
...
Otherwise, it can be resolved safety
^KT-52270 Fixed
2022-07-11 12:44:06 +00:00
Igor Chevdar
a61d05971e
[box-tests] Added a couple of multi-module box tests
2022-07-10 17:56:36 +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