Alexander Udalov
3bc0eaff59
Fix warnings in stdlib samples and test modules
2021-08-10 17:57:50 +02:00
Ilya Goncharov
766857881a
[JS IR] Review remarks
...
- Use intrinsic on this
- Enqueue invoke for DCE
- Change transform
- Ignore instead of target backend
^KT-46204 fixed
2021-08-10 07:24:51 +00:00
Ilya Goncharov
a28138eb72
[JS IR] Change js function on Kotlin code
...
^KT-46204 fixed
2021-08-10 07:24:49 +00:00
Ilya Goncharov
627af332b1
[JS IR] Use PublishedApi for intrinsic
...
^KT-46204 fixed
2021-08-10 07:24:48 +00:00
Ilya Goncharov
e6af3ff6a8
[JS IR] Rename and doc new intrinsics, add new intrinsic to call suspend fun as supertype
...
^KT-46204 fixed
2021-08-10 07:24:48 +00:00
Ilya Goncharov
a70fc99130
[JS IR] Add intrinsic to call suspend functions as super type
...
^KT-46204 fixed
2021-08-10 07:24:47 +00:00
Ilya Goncharov
755f847ab9
[JS IR] Use invoke for coroutines in runtime
...
^KT-46204 fixed
2021-08-10 07:24:46 +00:00
Ilya Goncharov
3c9dcdbbee
[JS IR] Generate suspend function as invoke
...
[JS IR] Fix type check utils to work with array of arities
[JS IR] Store multiple arities for suspend functional interface implementers
^KT-46204 fixed
2021-08-10 07:24:46 +00:00
Igor Laevsky
5db8ec6551
WASM: Don't use intrinsics to specify NaN's
2021-08-06 17:34:21 +03:00
Alexander Udalov
0925e1b497
Enable JVM IR for stdlib/reflect/test libraries
...
Changes in Gradle integration tests are needed because:
- in new-mpp-android, kotlin-stdlib-jdk8 is used, and JVM IR generates
JDK 8-specific bytecode (invokedynamic). D8 needs to be configured to
desugar it with source/target versions set to 1.8, otherwise it
reports an error.
- in AndroidExtensionsManyVariants and AndroidIcepickProject, D8 fails
with assertions enabled if AGP < 4.0.0 is used because of
https://issuetracker.google.com/issues/148661132 . The tests which use
old AGP versions are probably not relevant anymore anyway.
Changes in kotlin-stdlib-runtime-merged.txt are caused by a slightly
different generation scheme of collection subclasses in JVM IR, and are
harmless.
(Previous attempt was at 15e978dbd311c2ba78ec32b394c21acde9811ccb.)
2021-08-05 12:36:35 +02:00
Abduqodiri Qurbonzoda
29ac9b33ca
Add Duration.parse/parseIsoString samples
2021-08-05 10:32:33 +00:00
Abduqodiri Qurbonzoda
5004735366
Add Regex matchAt samples
2021-08-05 10:32:32 +00:00
Abduqodiri Qurbonzoda
d7b10f31b4
Add Regex splitToSequence samples
2021-08-05 10:32:32 +00:00
Igor Laevsky
d8569b6a03
WASM: NFC. Remove dead code
2021-08-04 16:23:38 +03:00
Igor Laevsky
af865544ff
WASM: Implement string hashcode
2021-08-04 16:23:38 +03:00
Igor Laevsky
80140207b5
WASM: Properly handle nullable exported strings
2021-08-04 16:23:36 +03:00
Igor Laevsky
468fe4196d
WASM: Implement string.compareTo and string.subSequence
2021-08-04 16:23:35 +03:00
Igor Laevsky
0eba74a9d2
WASM: Impelment float to string conversion operations
2021-08-04 16:23:32 +03:00
Igor Laevsky
f34a079699
WASM: Implement integer to string conversion operations
2021-08-04 16:23:32 +03:00
Igor Laevsky
2538caa84f
WASM: NFC. Rename string import/export functions
2021-08-04 16:23:31 +03:00
Igor Laevsky
ebde1e5491
WASM: Crude println implementation with the wasm-native strings
2021-08-04 16:23:30 +03:00
Igor Laevsky
fc0ae851a2
WASM: Don't special case string equality, it now goes through normal .equals method
2021-08-04 16:23:29 +03:00
Igor Laevsky
d90e3618f9
WASM: NFC. Rename WasmReinterpret into WasmNoOpCast.
2021-08-04 16:23:28 +03:00
Igor Laevsky
0f84525bdc
WASM: Implement wasm-native strings part 1
...
There are several changes here but they all required for at least one test to pass.
- Implemented String class and several utility functions using built-in CharArray
- Added new constant memory segment to hold string literals and required funcs to work with them
- Added very crude mostly incorrect rudimentary ability to pass strings back to javascript
2021-08-04 16:23:28 +03:00
Igor Laevsky
9ccdffe8ad
WASM: NFC. Rename WasmPrimitive into WasmAutoboxed and add few comments.
2021-08-04 16:23:27 +03:00
Alexander Udalov
3636118743
Introduce typealias JvmRepeatable for j.l.a.Repeatable
...
#KT-12794 Fixed
2021-07-30 19:53:44 +02:00
Alexander Udalov
0a6d010d1c
Support new repeatable annotations in kotlin-reflect
...
- Unwrap Kotlin-repeatable annotations (with implicit container)
- Introduce `KAnnotatedElement.findAnnotations` to find instances of
repeated annotations
#KT-12794
2021-07-30 19:53:33 +02:00
Mikhael Bogdanov
29f6ec4f40
Update defaultSnapshotVersion to 1.6.255-SNAPSHOT
2021-07-29 19:45:54 +02:00
Alexander Udalov
0a9498f7e2
Build: suppress deprecated JVM target warning globally
...
There seems to be no point in configuring the compiler argument per
project. This argument will be deleted soon anyway, when we remove
support for JDK 1.6 & 1.7.
Also remove `disableDeprecatedJvmTargetWarning`. It didn't have any
effect in all modules where it was applied because these modules
reassign `freeCompilerArgs` anyway, with
`-Xsuppress-deprecated-jvm-target-warning` in it.
2021-07-27 13:35:39 +02:00
Alexander Udalov
91c39ed01c
Build: remove obsolete compiler arguments
...
These compiler arguments enable features which are enabled by default in
the current Kotlin anyway.
The only exception is in :compiler:cli which uses an old language
version.
2021-07-27 13:35:38 +02:00
Abduqodiri Qurbonzoda
b65c477e68
Regex.splitToSequence, CharSequence.splitToSequence(Regex) #KT-23351
2021-07-20 14:09:24 +00:00
Abduqodiri Qurbonzoda
1fee6b191f
Fix typo in Sequence.constrainOnce() doc
2021-07-20 14:09:24 +00:00
Ilmir Usmanov
151478aa27
Raise deprecations of suspend calls with dangling lambda to error
...
#KT-22562
2021-07-19 08:36:36 +00:00
Svyatoslav Kuzmich
a468792a19
[Wasm] Support Milestone 3 of V8 Wasm GC
...
Advance V8 version to 9.2.212
Relevant Wasm GC changes:
f9f8ffa445
2021-07-15 10:59:06 +00:00
Mikhail Glukhikh
47c8bab48e
Replace -Xuse-experimental with -Xopt-in in codebase
2021-07-12 21:26:17 +03:00
Ilya Gorbunov
5072653957
Duration: parse explicit positive values parenthesized
2021-07-12 04:39:28 +00:00
Ilya Gorbunov
682cb8e34a
Duration default toString: use 0, 1, 2, 3, 6, or 9 decimal digits
...
KT-42851
2021-07-12 04:39:27 +00:00
Ilya Gorbunov
7551719b85
Duration parsing: simplify range checks
2021-07-12 04:39:27 +00:00
Ilya Gorbunov
0427eec20f
Quote invalid strings in exception messages
2021-07-12 04:39:26 +00:00
Ilya Gorbunov
3f6e2be687
Duration: do not use scientific format for large values
...
The largest duration value formatted in ns with maximal decimals
would fit in 40 chars.
2021-07-12 04:39:25 +00:00
Ilya Gorbunov
1be1e5279c
Duration: parse and format negative values parenthesized
2021-07-12 04:39:25 +00:00
Ilya Gorbunov
ca1a9e4ca3
Duration: longer than long values in ISO components, test negative cases
2021-07-12 04:39:24 +00:00
Ilya Gorbunov
1c6ab08220
Introduce functions to parse a duration from a string KT-45325
2021-07-12 04:39:23 +00:00
Ilya Gorbunov
7ab6f6c9b2
Change Duration.INFINITE.toIsoString representation
2021-07-12 04:39:23 +00:00
Ilya Gorbunov
ae3d9cc3cd
Small durations are formatted with sub-second units KT-42851
2021-07-12 04:39:22 +00:00
Ilya Gorbunov
150ce812f1
Use days component in the default duration format KT-42851
2021-07-12 04:39:21 +00:00
Ilya Gorbunov
255c4b405e
Duration: round Double value to Long ns instead of truncating it KT-47675
2021-07-12 04:39:21 +00:00
Ilya Gorbunov
42cd2e65e6
Change Duration.toString format KT-42851
2021-07-12 04:39:20 +00:00
Ilya Gorbunov
455fee29e4
Find correct next match after matchAt and matchEntire KT-47676
2021-07-10 21:31:20 +03:00
Ilya Gorbunov
28a0698463
Regex.matchAt/matchesAt #KT-34021
2021-07-10 21:31:19 +03:00