Commit Graph

78460 Commits

Author SHA1 Message Date
Nikolay Krasko 1cefe50e6e Merge Kotlin build-1.5.0-dev-1282 with K/N (6b8547b8f93adb)
Straighten Char-to-code and Char-to-digit conversions out #KT-23451
Kotlin/Native base commit: 6b8547b8f93adb49447d6583d3d9934acd1b0922
2021-01-12 16:10:02 +03:00
Abduqodiri Qurbonzoda 8bb76c67e3 Straighten Char-to-code and Char-to-digit conversions out #KT-23451
(cherry picked from commit 4c0c46e87def97f9102da9df72331ebcfee09aab)
2021-01-12 15:56:42 +03:00
Abduqodiri Qurbonzoda a4155e8fc4 Locale-agnostic case conversions by default #KT-43023
(cherry picked from commit 1b565500b935239484580005a31ae2630c61b25d)
2021-01-12 15:56:42 +03:00
Vasily Levchenko d1fa7bb27c [kotlin compiler][update] 1.5.0-dev-1282
* 98a9e142e8 - (HEAD -> master, tag: build-1.5.0-dev-1282, origin/master, origin/HEAD) JVM IR: Fix visibility of protected/private functions with reified types (vor 3 Tagen) <Steven Schäfer>
* dad10e94aa - (tag: build-1.5.0-dev-1281) JVM IR: Mangle names of $$forInline functions (vor 3 Tagen) <Steven Schäfer>
* 7cc06489dd - (tag: build-1.5.0-dev-1267) IR: move enum value array initialization out of <clinit> (vor 3 Tagen) <Jinseong Jeon>
* f8f08e8134 - IR: add a test about maximum number of constants in an enum class (vor 3 Tagen) <Jinseong Jeon>
* 0a8858fbfe - (tag: build-1.5.0-dev-1263) [minor] document -compiler-path option for kotlin runner (vor 4 Tagen) <Ilya Chernikov>
* 979144157f - Implement -howtorun option for kotlin runner (vor 4 Tagen) <Ilya Chernikov>
* edc730f70b - Implement -no-stdlib argument support in kotlin runner (vor 4 Tagen) <Ilya Chernikov>
* d2ecc1e361 - Implement -X arguments passing from kotlin runner to compiler (vor 4 Tagen) <Ilya Chernikov>
* 9a7d1948a7 - Implement support for -Xdefault-script-extension cli option (vor 4 Tagen) <Ilya Chernikov>
* 534342a566 - [minor] use new kotlin.io.path API in tests (vor 4 Tagen) <Ilya Chernikov>
* 1bd6cc823c - Fix provided properties access generation (vor 4 Tagen) <Ilya Chernikov>
* ffdcda8914 - [build] Fix JDK detection on Mac OS X 11 (Big Sur) (vor 4 Tagen) <Ilya Chernikov>
* 77836f1aa9 - (tag: build-1.5.0-dev-1258) [Test] Port checkVariableTable suspend lambda tests (vor 4 Tagen) <Kristoffer Andersen>
* 82abc80215 - (tag: build-1.5.0-dev-1256) Move old changelogs to docs/changelogs/ (vor 4 Tagen) <Alexander Udalov>
* db3bebb531 - (tag: build-1.5.0-dev-1255) Add Revved up by Gradle Enterprise badge to Readme (vor 5 Tagen) <Nelson Osacky>
* 41c4693ebf - (tag: build-1.5.0-dev-1233) Build: remove obsolete -Xir-binary-with-stable-abi (vor 7 Tagen) <Alexander Udalov>
* ee2ae0c471 - (tag: build-1.5.0-dev-1225) JVM IR: remove obsolete -Xir-check-local-names (vor 7 Tagen) <Alexander Udalov>
* acd29481bd - (tag: build-1.5.0-dev-1220) Regenerate sources of builtins and stdlib (vor 7 Tagen) <Alexander Udalov>
* ed9a0e514d - (tag: build-1.5.0-dev-1219) Regenerate tests and fir-tree (vor 8 Tagen) <Alexander Udalov>
* 96de9144de - (tag: build-1.5.0-dev-1211) [JS IR] Generate stub for exported functions with default params (vor 11 Tagen) <Shagen Ogandzhanian>
* bf3f6594d5 - (tag: build-1.5.0-dev-1210) IR: do not lose $default function annotations when generating calls (vor 11 Tagen) <Alexander Udalov>
* ac325f6111 - IR: add toString for IrBased descriptors (vor 11 Tagen) <Alexander Udalov>
* 3c37bbaf64 - (tag: build-1.5.0-dev-1209) Duration: normalize to avoid negative zeroes (KT-44168) (vor 11 Tagen) <Ilya Gorbunov>
* ae6f10df3b - Duration: reject NaN duration values (KT-44168) (vor 11 Tagen) <Ilya Gorbunov>
* 1d40ed39d0 - (tag: build-1.5.0-dev-1206) KotlinVersion: Advance snapshot version 1.4.255 -> 1.5.255 (vor 11 Tagen) <Ilya Gorbunov>
* 133e39b783 - (tag: build-1.5.0-dev-1204, origin/push/nk/all) Advance snapshot version 1.4.255 -> 1.5.255 (KTI-421) (vor 11 Tagen) <Nikolay Krasko>
* 662787b12b - (tag: build-1.5.0-dev-1192) Straighten Char-to-code and Char-to-digit conversions out #KT-23451 (vor 11 Tagen) <Abduqodiri Qurbonzoda>
* 79e426270c - (tag: build-1.5.0-dev-1188) Rename Random.Default serialization surrogate object (KT-25571) (vor 11 Tagen) <Ilya Gorbunov>
* 00506a75d3 - (tag: build-1.5.0-dev-1183) Make Random implementations serializable (KT-25571) (vor 11 Tagen) <Iaroslav Postovalov>
* 38967f208e - (tag: build-1.5.0-dev-1170, origin/rr/skuzmich/wasm-interface-calls-improvements2) [Wasm] Remove unused WasmI1 type (vor 12 Tagen) <Svyatoslav Kuzmich>
* 22239e2733 - [Wasm] Remove unused super class field in type info (vor 12 Tagen) <Svyatoslav Kuzmich>
* 785c947782 - [Wasm] Improve class type checks (vor 12 Tagen) <Svyatoslav Kuzmich>
* b6ad1584c9 - [Wasm] Improve interface method dispatch (vor 12 Tagen) <Svyatoslav Kuzmich>
* e7dc199ad7 - (tag: build-1.5.0-dev-1162) Init enum entries whenever we access companion object or accessing valueOf (vor 12 Tagen) <Shagen Ogandzhanian>
* 7fa04afda2 - (tag: build-1.5.0-dev-1155) JVM_IR KT-32115 fix $$delegatedProperties initialization in enum (vor 12 Tagen) <Dmitry Petrov>
* 3e3ffee2a0 - (tag: build-1.5.0-dev-1152, origin/push/demiurg906/bootstrap-update) Advance bootstrap to 1.5.0-dev-1141 (vor 12 Tagen) <Dmitriy Novozhilov>
* 81e00ca371 - (tag: build-1.5.0-dev-1145) JVM box tests for KT-30402 (vor 12 Tagen) <Dmitry Petrov>
* 1314adb6f7 - (tag: build-1.5.0-dev-1143) Locale-agnostic case conversions by default #KT-43023 (vor 12 Tagen) <Abduqodiri Qurbonzoda>
* 80289e4a3f - (tag: build-1.5.0-dev-1141, origin/master-for-ide) IC Mangling: Generate inline class literal instead of underlying type (vor 12 Tagen) <Ilmir Usmanov>
* 55a5695fc0 - (tag: build-1.5.0-dev-1132) [JS] Forbid export of interfaces (vor 13 Tagen) <Shagen Ogandzhanian>
* a6534c4653 - (tag: build-1.5.0-dev-1117) [FIR] Fix completion of synthetic call arguments (vor 13 Tagen) <Mikhail Glukhikh>
* b7a382f097 - (tag: build-1.5.0-dev-1115) Revert "Fix ISE when inferring type of a property that delegates to itself" (vor 13 Tagen) <Denis.Zharkov>
* 826985450e - (tag: build-1.5.0-dev-1110) Add test for KT-42036 (vor 13 Tagen) <Roman Artemev>
* 30a5eee481 - (tag: build-1.5.0-dev-1108) Don't approximate abbreviation during substitution it as it can't be projected at top-level (vor 13 Tagen) <Victor Petukhov>
* 009add2b41 - (tag: build-1.5.0-dev-1107) [Test] Report difference in test data file in a first place (vor 13 Tagen) <Dmitriy Novozhilov>
* 0af1c81d62 - (tag: build-1.5.0-dev-1104) Revert "Probably fix issue with creating module descriptor for SDK twice" (vor 13 Tagen) <Dmitriy Novozhilov>
* 6230a7861a - (tag: build-1.5.0-dev-1098) Wizard: do not print plugin repositories in build files if all of them are default ones (vor 13 Tagen) <Ilya Kirillov>
* 74077bf6d2 - (tag: build-1.5.0-dev-1090) [FIR] Don't attempt to process interface constructors (vor 13 Tagen) <Mikhail Glukhikh>
* 6a6e2a1c77 - (tag: build-1.5.0-dev-1089) Set custom timeout for flaky muted tests synchronization requests (vor 13 Tagen) <Yunir Salimzyanov>
* 27dd9484ba - (tag: build-1.5.0-dev-1086) Add missed type arguments for a star projection into the enhanced type arguments list (vor 13 Tagen) <Victor Petukhov>
* 531ba4bb48 - (tag: build-1.5.0-dev-1070) [IR] Narrow usage scope of ObsoleteDescriptorBasedAPI in CheckIrElementVisitor (vor 2 Wochen) <Zalim Bashorov>
* 02849edc22 - [IR] Make descriptor parameter optional for IrFileSymbolImpl and IrExternalPackageFragmentSymbolImpl (vor 2 Wochen) <Zalim Bashorov>
* 14254ceb0b - [IR] Remove no longer needed usages of ObsoleteDescriptorBasedAPI (vor 2 Wochen) <Zalim Bashorov>
* 0372dae3ce - [JS scripting] Remove usages of descriptor based APIs and proper support for callable references (vor 2 Wochen) <Zalim Bashorov>
* 9ac7c3d8bc - [Wasm] Remove usage of descriptor based API usage from WasmSharedVariablesManager (vor 2 Wochen) <Zalim Bashorov>
* c569ec1bad - [IR] Add dumpKotlinLike for IrType and IrTypeArgument (vor 2 Wochen) <Zalim Bashorov>
* 77a9d14f93 - (tag: build-1.5.0-dev-1067) Capitalize/decapitalize only ASCII characters across project (vor 2 Wochen) <Alexander Udalov>
* 5d4b0b19d4 - (tag: build-1.5.0-dev-1066) JVM_IR KT-13213 split string constants into parts of acceptable length (vor 2 Wochen) <Dmitry Petrov>
* 3f287d344e - (tag: build-1.5.0-dev-1065) KT-43941 [Sealed interfaces]: subclass intention (vor 2 Wochen) <Andrei Klunnyi>
* 1cac8b0d61 - KT-43941 [Sealed interfaces]: preliminary, J2K (vor 2 Wochen) <Andrei Klunnyi>
* 86792131cd - KT-43941 [Sealed interfaces]: preliminary, code cleanup (vor 2 Wochen) <Andrei Klunnyi>
* acbf382d04 - (tag: build-1.5.0-dev-1054) FIR: Add test on ambiguous vararg (vor 2 Wochen) <Denis.Zharkov>
* 8c7b23a8dd - FIR Java/JVM: avoid plain "Array" comparison (vor 2 Wochen) <Jinseong Jeon>
* 383de7a9c5 - FIR Java: Fix Java override ambiguity with vararg value type (vor 2 Wochen) <Jinseong Jeon>
* d663f204e5 - (tag: build-1.5.0-dev-1050) FIR Java: make method annotations lazy (vor 2 Wochen) <Mikhail Glukhikh>
* c8c34ebf17 - FIR Java: make constructor annotations lazy (vor 2 Wochen) <Mikhail Glukhikh>
* 56df95b8e7 - FIR Java: make field annotations lazy (vor 2 Wochen) <Mikhail Glukhikh>
2021-01-12 15:09:31 +03:00
Sergey Bogolepov 780adc4163 Fix mingw-linux_arm32_hfp cross-compilation
Use gold linker instead of default one since the latter doesn't support elf.
2021-01-12 15:09:31 +03:00
Steven Schäfer 98a9e142e8 JVM IR: Fix visibility of protected/private functions with reified types 2021-01-08 16:35:31 +01:00
Steven Schäfer dad10e94aa JVM IR: Mangle names of $$forInline functions 2021-01-08 16:30:18 +01:00
Jinseong Jeon 7cc06489dd IR: move enum value array initialization out of <clinit>
#KT-44192 Fixed
2021-01-07 23:00:37 +01:00
Jinseong Jeon f8f08e8134 IR: add a test about maximum number of constants in an enum class 2021-01-07 23:00:37 +01:00
Ilya Chernikov 0a8858fbfe [minor] document -compiler-path option for kotlin runner 2021-01-07 10:37:23 +01:00
Ilya Chernikov 979144157f Implement -howtorun option for kotlin runner
Implement -no-stdlib argument support in kotlin runner

#KT-43534 fixed
2021-01-07 10:37:22 +01:00
Ilya Chernikov edc730f70b Implement -no-stdlib argument support in kotlin runner
#KT-43294 fixed
2021-01-07 10:37:22 +01:00
Ilya Chernikov d2ecc1e361 Implement -X arguments passing from kotlin runner to compiler 2021-01-07 10:37:22 +01:00
Ilya Chernikov 9a7d1948a7 Implement support for -Xdefault-script-extension cli option 2021-01-07 10:37:22 +01:00
Ilya Chernikov 534342a566 [minor] use new kotlin.io.path API in tests 2021-01-07 10:37:21 +01:00
Ilya Chernikov 1bd6cc823c Fix provided properties access generation
The presense of accessors in the descriptor led to the wrong code
generation in some cases.
#KT-43176 fixed
2021-01-07 10:37:20 +01:00
Ilya Chernikov ffdcda8914 [build] Fix JDK detection on Mac OS X 11 (Big Sur)
#KTI-443 fixed
2021-01-07 10:37:19 +01:00
Kristoffer Andersen 77836f1aa9 [Test] Port checkVariableTable suspend lambda tests
Reveals discrepancy in LVT presence on lambda implementations on the
old and new backend.

The generated code in the constructors of Suspend Lambda objects is
identical, but the IR backend generates an LVT with the constructor
parameters.

The user has to be very insistent to see this ("for step into" +
disabling "Show only kotlin variables"), but it is an observable
difference.
2021-01-06 22:33:37 +01:00
Alexander Udalov 82abc80215 Move old changelogs to docs/changelogs/ 2021-01-06 21:53:12 +01:00
Nelson Osacky db3bebb531 Add Revved up by Gradle Enterprise badge to Readme 2021-01-06 20:37:45 +03:00
Alexander Udalov 41c4693ebf Build: remove obsolete -Xir-binary-with-stable-abi
It's no longer needed after eef06cded3 and 3e3ffee2a0.
2021-01-04 18:10:43 +01:00
Alexander Udalov ee2ae0c471 JVM IR: remove obsolete -Xir-check-local-names
This flag was added a long time ago, at the time when we weren't sure if
we were going to keep the naming of local and anonymous classes
completely equal to the naming in the old backend. Now that we've
decided that we won't keep it equal and there are a lot of differences
already, it's not useful anymore.
2021-01-04 12:13:13 +01:00
Alexander Udalov acd29481bd Regenerate sources of builtins and stdlib 2021-01-03 22:31:06 +01:00
Alexander Udalov ed9a0e514d Regenerate tests and fir-tree 2021-01-03 14:53:41 +01:00
Shagen Ogandzhanian 96de9144de [JS IR] Generate stub for exported functions with default params
see https://youtrack.jetbrains.com/issue/KT-43407
2020-12-31 20:21:21 +01:00
Alexander Udalov bf3f6594d5 IR: do not lose $default function annotations when generating calls
Losing an annotation like `JvmName` resulted in the incorrect bytecode
generated in the JVM IR backend.

 #KT-44160 Fixed
2020-12-31 18:36:24 +01:00
Alexander Udalov ac325f6111 IR: add toString for IrBased descriptors
To help in diagnosing issues like KT-44160.
2020-12-31 18:36:24 +01:00
Ilya Gorbunov 3c37bbaf64 Duration: normalize to avoid negative zeroes (KT-44168)
The current comparison method of inline classes makes
durations of positive and negative zeroes non-equal.
To avoid that, normalize the duration value upon construction
preventing negative zero being stored.
2020-12-31 19:44:39 +03:00
Ilya Gorbunov ae6f10df3b Duration: reject NaN duration values (KT-44168) 2020-12-31 19:44:10 +03:00
Ilya Gorbunov 1d40ed39d0 KotlinVersion: Advance snapshot version 1.4.255 -> 1.5.255
KTI-421
2020-12-31 19:20:29 +03:00
Nikolay Krasko 133e39b783 Advance snapshot version 1.4.255 -> 1.5.255 (KTI-421)
#KTI-421 Fixed
2020-12-31 15:49:06 +03:00
Abduqodiri Qurbonzoda 662787b12b Straighten Char-to-code and Char-to-digit conversions out #KT-23451 2020-12-31 12:07:41 +03:00
Ilya Gorbunov 79e426270c Rename Random.Default serialization surrogate object (KT-25571) 2020-12-31 06:57:17 +03:00
Iaroslav Postovalov 00506a75d3 Make Random implementations serializable (KT-25571)
Make Random.Default, XorWowRandom, and wrapper classes for JDK Random implement Serializable interface.

Co-authored-by: Ilya Gorbunov <ilya.gorbunov@jetbrains.com>
2020-12-31 04:10:28 +03:00
Svyatoslav Kuzmich 38967f208e [Wasm] Remove unused WasmI1 type 2020-12-30 19:29:11 +03:00
Svyatoslav Kuzmich 22239e2733 [Wasm] Remove unused super class field in type info 2020-12-30 19:29:11 +03:00
Svyatoslav Kuzmich 785c947782 [Wasm] Improve class type checks
Use wasm ref.test instad of manual type info linked list traversal
2020-12-30 19:29:10 +03:00
Svyatoslav Kuzmich b6ad1584c9 [Wasm] Improve interface method dispatch
- Use typed Wasm tables for each interface method to avoid runtime
  function type check

- Use linear search by implemented interface rather than by individual
  virtual function signature
2020-12-30 19:29:10 +03:00
Shagen Ogandzhanian e7dc199ad7 Init enum entries whenever we access companion object or accessing valueOf
Fixes https://youtrack.jetbrains.com/issue/KT-43987
Fixes https://youtrack.jetbrains.com/issue/KT-43989
2020-12-30 14:54:34 +01:00
Dmitry Petrov 7fa04afda2 JVM_IR KT-32115 fix $$delegatedProperties initialization in enum 2020-12-30 15:56:18 +03:00
Dmitriy Novozhilov 3e3ffee2a0 Advance bootstrap to 1.5.0-dev-1141 2020-12-30 11:37:37 +03:00
Dmitry Petrov 81e00ca371 JVM box tests for KT-30402 2020-12-30 10:57:46 +03:00
Abduqodiri Qurbonzoda 1314adb6f7 Locale-agnostic case conversions by default #KT-43023 2020-12-30 10:08:25 +03:00
Ilmir Usmanov 80289e4a3f IC Mangling: Generate inline class literal instead of underlying type
literal in annotations.
 #KT-30280 Fixed
2020-12-30 03:31:08 +01:00
Shagen Ogandzhanian 55a5695fc0 [JS] Forbid export of interfaces
With the only exception of external interfaces.

See https://youtrack.jetbrains.com/issue/KT-44099
2020-12-29 20:43:57 +01:00
Mikhail Glukhikh a6534c4653 [FIR] Fix completion of synthetic call arguments 2020-12-29 17:48:15 +03:00
Denis.Zharkov b7a382f097 Revert "Fix ISE when inferring type of a property that delegates to itself"
This reverts commit 1a03d5c93e.

The reason is that original change seems to be breaking (see KT-44137).

^KT-44137 Relates
^KT-37796 Open
2020-12-29 17:41:12 +03:00
Roman Artemev 826985450e Add test for KT-42036 2020-12-29 16:27:31 +03:00
Victor Petukhov 30a5eee481 Don't approximate abbreviation during substitution it as it can't be projected at top-level
^KT-42036 Fixed
2020-12-29 16:08:38 +03:00
Dmitriy Novozhilov 009add2b41 [Test] Report difference in test data file in a first place 2020-12-29 16:06:48 +03:00