Vasily Levchenko 1bdd07d24d [kotlin compiler][update] 1.4.30-dev-1895
* 0a18be62e5 - (HEAD -> master, tag: build-1.4.30-dev-1895, origin/master, origin/HEAD) Add prefix for inner test classes in ide perf tests to avoid metric name clashes (vor 17 Stunden) <Vladimir Dolzhenko>
* 08b8939b80 - (tag: build-1.4.30-dev-1887) IR: make IrSymbol.isPublicApi an extension (vor 3 Tagen) <Alexander Udalov>
* 4bd08e5e0c - IR: clear callToSubstitutedDescriptorMap for each file to avoid leaking memory (vor 3 Tagen) <Alexander Udalov>
* 7ac981d4d3 - Psi2ir: refactor ModuleGenerator.generateModuleFragment (vor 3 Tagen) <Alexander Udalov>
* 7b53d668ab - (tag: build-1.4.30-dev-1883) Fix test after 4f06162446 (vor 3 Tagen) <Victor Petukhov>
* c07f25fa44 - (tag: build-1.4.30-dev-1882) Revert "FoldInitializerAndIfToElvisInspection: don't add explicit type if var is used as non-nullable" (vor 3 Tagen) <Yan Zhulanow>
* 87574dddd9 - Revert "ReplaceWith: suggest for "invoke" extension" (vor 3 Tagen) <Yan Zhulanow>
* 04457e92d0 - Revert ""Put/Join arguments/parameters" intention: don't suggest on nested argument list" (vor 3 Tagen) <Yan Zhulanow>
* 3321ce6325 - Revert ""Code Cleanup": don't remove deprecated imports when file has `@file:Suppress("DEPRECATION")` annotation" (vor 3 Tagen) <Yan Zhulanow>
* 839c30d04b - Revert "Additional minor fixes for KT-33594: avoid using hard-coded annotation name, simplify hasAnnotationToSuppressDeprecation()" (vor 3 Tagen) <Yan Zhulanow>
* 9320637efe - Revert "Redundant companion reference: do not report 'values/valueOf' function in enum" (vor 3 Tagen) <Yan Zhulanow>
* 383190f25e - Revert "Replace with ordinary assignment: do not suggest when operator is augmented assignment operator function" (vor 3 Tagen) <Yan Zhulanow>
* 7fccd0153b - Revert "Refactoring: Remove hard-coded augmented assignment check with a Name check" (vor 3 Tagen) <Yan Zhulanow>
* 0ae21a157f - Revert ""Change to return with label" quick fix: apply for type mismatch" (vor 3 Tagen) <Yan Zhulanow>
* 601198634d - Revert "Minor: Extract lambda return expression handling" (vor 3 Tagen) <Yan Zhulanow>
* b18de1e3ff - Revert "Provide quickfix for specifying type of variable initialized with null" (vor 3 Tagen) <Yan Zhulanow>
* 4327bc4ac3 - Revert "KT-23394: Add a test with a property" (vor 3 Tagen) <Yan Zhulanow>
* fe64fcf8a3 - Revert "Minor: update order in IntentionTestGenerated" (vor 3 Tagen) <Yan Zhulanow>
* c4a48598c0 - Revert ""Add parameter to function" for TYPE_MISMATCH: fix it works correctly for extension function" (vor 3 Tagen) <Yan Zhulanow>
* 16dbf7ba74 - Revert "Convert to range check: don't report it if recursive call will be created" (vor 3 Tagen) <Yan Zhulanow>
* d735637f1e - Revert "RemoveBracesIntention: add new line for long expression" (vor 3 Tagen) <Yan Zhulanow>
* f615ed2f26 - Revert ""Use destructuring declaration": fix it works correctly if variable name is shadowed" (vor 3 Tagen) <Yan Zhulanow>
* ab70cc35ea - Revert "Add quick fix for 'JAVA_CLASS_ON_COMPANION'" (vor 3 Tagen) <Yan Zhulanow>
* 6cc4d70b07 - Revert "Minor: Remove hard-coded 'Companion' name" (vor 3 Tagen) <Yan Zhulanow>
* 19f518c037 - Revert "IfThenToSafeAccessInspection: fix it works correctly for variable/operator call" (vor 3 Tagen) <Yan Zhulanow>
* 19896f9616 - Revert "Minor: Use second pattern argument instead of explicit `callee.text`" (vor 3 Tagen) <Yan Zhulanow>
* 519f92599c - Revert "Minor: Import DebuggerUtils" (vor 3 Tagen) <Yan Zhulanow>
* 9b2aa0951b - (tag: build-1.4.30-dev-1880) [box-tests] Turned on tests on typeof for K/N (vor 3 Tagen) <Igor Chevdar>
* 9d1cb6a2c0 - Turned off TypeOfChecker for K/N (vor 3 Tagen) <Igor Chevdar>
* 4f06162446 - (tag: build-1.4.30-dev-1879) Get a callable reference expression to report an error on it properly, taking into account possible wrapping (vor 3 Tagen) <Victor Petukhov>
* cb020fb9f4 - (tag: build-1.4.30-dev-1873) Change repository adding logic (vor 3 Tagen) <Ilya Muradyan>
* 7062bf5737 - (tag: build-1.4.30-dev-1872) [JS_IR] Additional check on loop label to not persist name for labeled loop (vor 3 Tagen) <Ilya Goncharov>
* 1a9e516dc0 - (tag: build-1.4.30-dev-1871) [ir-plugin] Referenced binary operators with the new API (vor 3 Tagen) <Igor Chevdar>
* 23d12a717e - (tag: build-1.4.30-dev-1866) [box-tests] Added a test (vor 3 Tagen) <Igor Chevdar>
* 27aed0ccbc - [IR] Inliner: erase non-reified parameters for casts (vor 3 Tagen) <Igor Chevdar>
* 27fb46712a - (tag: build-1.4.30-dev-1865) [JVM+IR] Unify new debugger tests expectations (vor 3 Tagen) <Kristoffer Andersen>
* e19ecdfb3d - [Tests] Suspend Codegen Tests Improvements (vor 3 Tagen) <pyos>
* 3291f8455b - [JVM+IR] Update straight-forward LVT tests (vor 3 Tagen) <Kristoffer Andersen>
* 2c9bf95227 - [JVM+IR] New LVT debugging test harness improvements (vor 3 Tagen) <Kristoffer Andersen>
* 4479bf0933 - (tag: build-1.4.30-dev-1862) [JS_IR] Enum constructor copy parameters with mapping by index (vor 3 Tagen) <Ilya Goncharov>
* 2790bc1105 - (tag: build-1.4.30-dev-1856) Split perf test json reports in a separate files/docs (vor 3 Tagen) <Vladimir Dolzhenko>
* d7a783e077 - Add prefix for inner test classes (vor 3 Tagen) <Vladimir Dolzhenko>
* 58f606e1f5 - (tag: build-1.4.30-dev-1854) Minor: Import DebuggerUtils (vor 3 Tagen) <Yan Zhulanow>
* 55e36fa1ab - Minor: Use second pattern argument instead of explicit `callee.text` (vor 3 Tagen) <Yan Zhulanow>
* 5095caee50 - IfThenToSafeAccessInspection: fix it works correctly for variable/operator call (vor 3 Tagen) <Toshiaki Kameyama>
* 871ad2b909 - Minor: Remove hard-coded 'Companion' name (vor 3 Tagen) <Yan Zhulanow>
* 15a615d63b - Add quick fix for 'JAVA_CLASS_ON_COMPANION' (vor 3 Tagen) <Toshiaki Kameyama>
* d61158a176 - "Use destructuring declaration": fix it works correctly if variable name is shadowed (vor 3 Tagen) <Toshiaki Kameyama>
* f4b9c4777f - RemoveBracesIntention: add new line for long expression (vor 3 Tagen) <Toshiaki Kameyama>
* 731848849e - Convert to range check: don't report it if recursive call will be created (vor 3 Tagen) <Toshiaki Kameyama>
* 03e725d5da - "Add parameter to function" for TYPE_MISMATCH: fix it works correctly for extension function (vor 3 Tagen) <Toshiaki Kameyama>
* 6515d53b94 - Minor: update order in IntentionTestGenerated (vor 3 Tagen) <Yan Zhulanow>
* f2dc132d5d - KT-23394: Add a test with a property (vor 3 Tagen) <Yan Zhulanow>
* cdf7f46ce1 - Provide quickfix for specifying type of variable initialized with null (vor 3 Tagen) <Toshiaki Kameyama>
* 55038e19ec - Minor: Extract lambda return expression handling (vor 3 Tagen) <Yan Zhulanow>
* f76e98868c - "Change to return with label" quick fix: apply for type mismatch (vor 3 Tagen) <Toshiaki Kameyama>
* 016e78e483 - Refactoring: Remove hard-coded augmented assignment check with a Name check (vor 3 Tagen) <Yan Zhulanow>
* 73e319ca7a - Replace with ordinary assignment: do not suggest when operator is augmented assignment operator function (vor 3 Tagen) <Toshiaki Kameyama>
* 55d55446c8 - Redundant companion reference: do not report 'values/valueOf' function in enum (vor 3 Tagen) <Toshiaki Kameyama>
* 2a841550d4 - Additional minor fixes for KT-33594: avoid using hard-coded annotation name, simplify hasAnnotationToSuppressDeprecation() (vor 3 Tagen) <Yan Zhulanow>
* cf5a6274e2 - "Code Cleanup": don't remove deprecated imports when file has `@file:Suppress("DEPRECATION")` annotation (vor 3 Tagen) <Toshiaki Kameyama>
* 4a328981c6 - "Put/Join arguments/parameters" intention: don't suggest on nested argument list (vor 3 Tagen) <Toshiaki Kameyama>
* be194c3460 - ReplaceWith: suggest for "invoke" extension (vor 3 Tagen) <Toshiaki Kameyama>
* bb7d4c224f - FoldInitializerAndIfToElvisInspection: don't add explicit type if var is used as non-nullable (vor 3 Tagen) <Toshiaki Kameyama>
* 3e632d074e - Enable Parcelize IDE plugin in Android Studio 4.2 (KT-42859) (vor 3 Tagen) <Yan Zhulanow>
* 47a4bd1701 - (tag: build-1.4.30-dev-1852) [FIR Java] Look into type arguments during dependent type parameter search (vor 3 Tagen) <Mikhail Glukhikh>
* 7f3d0af4f7 - [FIR Java] Soften rules for matching types for may-be-special-builtins (vor 3 Tagen) <Mikhail Glukhikh>
* 81529a835b - Drop FirAbstractOverrideChecker.isEqualTypes (vor 3 Tagen) <Mikhail Glukhikh>
* abc2866902 - [FIR] Fold flexible types after substitution if possible (vor 3 Tagen) <Mikhail Glukhikh>
* acb03cb28c - [FIR2IR] Expand type during super qualifier search (vor 3 Tagen) <Mikhail Glukhikh>
* c50aa5f2ec - [FIR TEST] Bad test data changes due to Java signature transformation (vor 3 Tagen) <Mikhail Glukhikh>
* d3e85dbce0 - [FIR] Implement replacing Object with type parameters for specials builtins (vor 3 Tagen) <Mikhail Glukhikh>
* d40248cb53 - [FIR] Extract computeJvmDescriptorReplacingKotlinToJava (vor 3 Tagen) <Mikhail Glukhikh>
* f866eff93e - Extract special generic signatures to compiler.common.jvm to reuse in FIR (vor 3 Tagen) <Mikhail Glukhikh>
* 0e7acd6e8b - [FIR Java] Add better type parameter erasure for override matching (vor 3 Tagen) <Mikhail Glukhikh>
* 17de486c23 - [FIR Java] Drop nasty code providing type parameter erasure (vor 3 Tagen) <Mikhail Glukhikh>
* 999627952a - (tag: build-1.4.30-dev-1851) [Gradle, K/N] Add proper assumptions for Mac only integration tests (vor 4 Tagen) <Alexander Likhachev>
* ac7b7abcc0 - [Gradle, JS] Fix K/JS project build with configuration cache (part 3) (vor 4 Tagen) <Alexander Likhachev>
* 97d39c102a - (tag: build-1.4.30-dev-1835) Fix BWC for Search utils (vor 4 Tagen) <Igor Yakovlev>
* 71023cd596 - (tag: build-1.4.30-dev-1834) [KT-40688] Inlay Hints: inlay hints are duplicated on code editing (vor 4 Tagen) <Andrei Klunnyi>
* b7a07fdf03 - (tag: build-1.4.30-dev-1832) Review fix: unify irTemporary variants (vor 4 Tagen) <Georgy Bronnikov>
* 8e331c8afe - IR: relax type cast for WrappedVariableDescriptor.containingDeclaration (vor 4 Tagen) <Georgy Bronnikov>
* b588839752 - EnumConstructorCall.fromSymbolDescriptor (vor 4 Tagen) <Georgy Bronnikov>
* 887dd10764 - IR: remove descriptor usage (vor 4 Tagen) <Georgy Bronnikov>
* e5cf7a1be7 - Remove descriptor usage from Scope.kt (vor 4 Tagen) <Georgy Bronnikov>
* 8d999a2c13 - Disable kx.ser plugin inside descriptors serialization in the IDE (vor 4 Tagen) <Leonid Startsev>
* 4ec90b18bc - Rework DescriptorSerializerPlugin to be a part of Project's extensions (vor 4 Tagen) <Leonid Startsev>
* ef907e0c46 - (tag: build-1.4.30-dev-1821) Fix FIR IDE test broken by Jinseong commit (vor 4 Tagen) <Mikhail Glukhikh>
* ad12cc296b - (tag: build-1.4.30-dev-1816) [FIR] Expand type before adding equality constraint (vor 4 Tagen) <Mikhail Glukhikh>
* 7815529eed - (tag: build-1.4.30-dev-1811) [Private fake overrides] Tests for private fake overrides construction (vor 4 Tagen) <Alexander Gorshenev>
* 294e7dd902 - [Private fake overrides] Renamed FakeOverrideBuilder object to FakeOverrideBuilderForLowering (vor 4 Tagen) <Alexander Gorshenev>
* 81c06b24f7 - [Private fake overrides] Private fake overrides linkage (vor 4 Tagen) <Alexander Gorshenev>
* 223d1dd5e6 - [Private fake overrides] Private fake override construction (vor 4 Tagen) <Alexander Gorshenev>
* c90556a883 - [Private fake overrides] FakeOverrideDeclarationTable for private fake override construction (vor 4 Tagen) <Alexander Gorshenev>
* 623f9a54c6 - [Private fake overrides] Tweak DeclarationTable to be open (vor 4 Tagen) <Alexander Gorshenev>
* c7ea8b1ab6 - [Private fake overrides] Prepare IdSignature for private fake override construction (vor 4 Tagen) <Alexander Gorshenev>
* 91089f5f7a - (tag: build-1.4.30-dev-1810) IrValidator: add more details to duplicate message for type parameter (vor 4 Tagen) <Mikhail Glukhikh>
* 44bb12480b - [FIR2IR] Forbid private fake overrides in generator (vor 4 Tagen) <Mikhail Glukhikh>
* 3663bc6be3 - FirClassSubstitutionScope: eliminate second constructor to simplify code (vor 4 Tagen) <Mikhail Glukhikh>
* 80f8b5b234 - IrValidator: mention file in exception message (vor 4 Tagen) <Mikhail Glukhikh>
* 23e7468e57 - [FIR2IR] Cache Java field-based properties more correctly #KT-42805 Fixed (vor 4 Tagen) <Mikhail Glukhikh>
* 3576cbf0d8 - [FIR] Add test for KT-42805 (vor 4 Tagen) <Mikhail Glukhikh>
* f2c651ec9c - [FIR2IR] Don't generate Any delegated members for data class (vor 4 Tagen) <Mikhail Glukhikh>
* 44459e8ac7 - FIR mangler: fix alias-based type handling #KT-42770 Fixed (vor 4 Tagen) <Mikhail Glukhikh>
* 6251568e17 - (tag: build-1.4.30-dev-1807) Fix test after 84129098cb (vor 4 Tagen) <Victor Petukhov>
* 289efd47b2 - (tag: build-1.4.30-dev-1805) [FIR2IR] Cleanup code around implicit casts (vor 4 Tagen) <Mikhail Glukhikh>
* 620a5d404d - [FIR2IR] Keep redundant cast on 'this' for local anonymous function (vor 4 Tagen) <Juan Chen>
* f4531b0f34 - FIR: set missed source in various FirElements (vor 4 Tagen) <Jinseong Jeon>
* 46cc01602e - FIR2IR: add implicit NOT_NULL cast if needed (vor 4 Tagen) <Jinseong Jeon>
* eeda48e63e - (tag: build-1.4.30-dev-1803) Allow prefix and relative path in resolvable properties. (vor 4 Tagen) <Sergey Bogolepov>
* 84129098cb - (tag: build-1.4.30-dev-1792) Add equality constraints without subtyping (vor 5 Tagen) <Victor Petukhov>
* b1b87becc8 - (tag: build-1.4.30-dev-1791) PSI2IR more JVM-like exhaustive when behavior KT-36840 (vor 5 Tagen) <Dmitry Petrov>
* 7edeccbdc7 - (tag: build-1.4.30-dev-1787) Move labeling into NameTables with labeling loops which contain escaped break (vor 5 Tagen) <Ilya Goncharov>
* 400a15e3d6 - Add lowering on switch in loop (vor 5 Tagen) <Ilya Goncharov>
* 14d9aa1660 - Add test on break in when without label (vor 5 Tagen) <Ilya Goncharov>
* a4b67f007f - (tag: build-1.4.30-dev-1784) JVM_IR: treat suspend-converted references as lambdas for inlining (vor 5 Tagen) <pyos>
* 12bec7cca2 - JVM_IR: when convering references to lambdas, bind the receiver (vor 5 Tagen) <pyos>
* 95fb597da0 - PSI2IR / FIR2IR: bind FunctionN as receiver when suspend-converting (vor 5 Tagen) <pyos>
* ccf921510d - PSI2IR / FIR2IR: do not create temporaries for adapted references (vor 5 Tagen) <pyos>
* 369056ca5d - Minor, add explicit type argument to workaround KT-42175 (vor 5 Tagen) <Alexander Udalov>
* 29aaf70d21 - (tag: build-1.4.30-dev-1783) Launch common tests on local JVM via run gutter (vor 5 Tagen) <Kirill Shmakov>
* 1c1e8f7beb - (tag: build-1.4.30-dev-1777) FIR CFG: revise edge kind between local func node and fun enter node (vor 5 Tagen) <Jinseong Jeon>
* ce8d983b2a - (tag: build-1.4.30-dev-1776) Fix test after the fix for KT-17691 (vor 5 Tagen) <Pavel Punegov>
* 0b34526321 - JVM_IR remove lambda hack required for odd JVM+OI behavior in KT-35849 (vor 5 Tagen) <Dmitry Petrov>
* ad88c60fd8 - (tag: build-1.4.30-dev-1772) [JVM_IR] Copy offsets from the original function to invokeSuspend. (vor 5 Tagen) <Mads Ager>
* 800bfe2cdb - (tag: build-1.4.30-dev-1770) [TEST] Update testdata broken in c2d3a252 (vor 5 Tagen) <Dmitriy Novozhilov>
* c2d3a252a8 - (tag: build-1.4.30-dev-1767) Mute very strange failing of FIR find usages test (vor 5 Tagen) <Dmitriy Novozhilov>
* 0484ab8cca - Don't unwrap captured types in IDE descriptors renderers (vor 5 Tagen) <Dmitriy Novozhilov>
* 3068d79d2b - [FIR-IDE] Add lock for status resolve (vor 5 Tagen) <Dmitriy Novozhilov>
* 6550bd09b1 - [FIR] Ensure class resolve phase in status resolve (vor 5 Tagen) <Dmitriy Novozhilov>
* 699dd54be9 - [FIR] Don't inherit some declaration modifiers (like `tailrec`) (vor 5 Tagen) <Dmitriy Novozhilov>
* bf1a00c73a - [FIR] Rework resolution of declaration statuses (vor 5 Tagen) <Dmitriy Novozhilov>
* 0b8116dff0 - [FIR] Change some phase requirements: STATUS -> DECLARATIONS (vor 5 Tagen) <Mikhail Glukhikh>
* 275260720d - Add replacePhase in FirTypeResolveTransformer.transformEnumEntry (vor 5 Tagen) <Mikhail Glukhikh>
* c171dafd91 - FIR serializer: always normalize visibility (vor 5 Tagen) <Mikhail Glukhikh>
* 1ff5da5f41 - [FIR] Add forgotten fake override type calculation (vor 5 Tagen) <Dmitriy Novozhilov>
* 5c55f67923 - (tag: build-1.4.30-dev-1748) JVM_IR: generate shorter names for classes in delegate initializers (vor 6 Tagen) <pyos>
* b786cf7559 - [IR] Made signature nullable (#3860) (vor 6 Tagen) <LepilkinaElena>
* 6a9c72e77c - IR: use one traversal instead of two for DeclarationContainerLoweringPass (vor 6 Tagen) <Alexander Udalov>
* b5695188f9 - IR: remove FunctionLoweringPass, refactor usages to FileLoweringPass (vor 6 Tagen) <Alexander Udalov>
* c110031935 - IR: refactor DeclarationTransformer (vor 6 Tagen) <Alexander Udalov>
* 2be7afc7f9 - IR: minor, give names to anonymous lowering visitors (vor 6 Tagen) <Alexander Udalov>
* 3979cde738 - (tag: build-1.4.30-dev-1743) Add box and PSI2IR tests for special cases listed in KT-35849 (vor 6 Tagen) <Dmitry Petrov>
* efee322830 - (tag: build-1.4.30-dev-1731) [Gradle, JS] Update Dukat on 0.5.8-rc.3 (vor 6 Tagen) <Ilya Goncharov>
* 4d4aabab8d - (tag: build-1.4.30-dev-1728) [JS BE] Make properties configurable when implementing an interface by delegation (vor 6 Tagen) <Victor Turansky>
* 2ad13847d1 - (tag: build-1.4.30-dev-1715) [KT-40670] Allow to override konan.properties from CLI (vor 6 Tagen) <Sergey Bogolepov>
* ea34a588f3 - (tag: build-1.4.30-dev-1709) Update KMM project wizard. (vor 6 Tagen) <Konstantin Tskhovrebov>
* 47c784f023 - (tag: build-1.4.30-dev-1695) JVM_IR fix Java wildcard types translation (vor 7 Tagen) <Dmitry Petrov>
* 19ed04e3fe - (tag: build-1.4.30-dev-1680) Bad capitalization fixed (vor 7 Tagen) <zhelenskiy>
* ba08cbbb20 - Other typos fixed (vor 7 Tagen) <zhelenskiy>
* 6e0aa007da - Typos fixed (vor 7 Tagen) <zhelenskiy>
* 0367dec035 - [Gradle, JS] Dukat change default mode onto source (vor 7 Tagen) <Ilya Goncharov>
* 0ce6d694b7 - (tag: build-1.4.30-dev-1679) Fix tests for as42. (vor 7 Tagen) <Konstantin Tskhovrebov>
* 48cd86b717 - (tag: build-1.4.30-dev-1678) Add JVM target bytecode version 15 (vor 7 Tagen) <Alexander Udalov>
* 819d64a2ef - (tag: build-1.4.30-dev-1676) Box inline class returned from suspend lambda non-locally in JVM_IR (vor 7 Tagen) <Ilmir Usmanov>
* 70a4ed3ebc - Box inline class returned from suspend lambda non-locally (vor 7 Tagen) <Ilmir Usmanov>
* c1765a5306 - (tag: build-1.4.30-dev-1668) Add changelog for 1.4.20-M2 (vor 7 Tagen) <anastasiia.spaseeva>
* b70a173595 - (tag: build-1.4.30-dev-1666) Formatting changes (vor 7 Tagen) <Georgy Bronnikov>
* 44893e09c1 - IR: remove unneeded ObsoleteDescriptorBasedAPI uses from backend.common (vor 7 Tagen) <Georgy Bronnikov>
* a0a6a4b0f1 - JVM_IR: make ObsoleteDescriptorBasedApi use explicit in all of backend.jvm (vor 7 Tagen) <Georgy Bronnikov>
* 305da8ee10 - IR: IrFunctionReference.fromSymbolDescriptor (vor 7 Tagen) <Georgy Bronnikov>
* 14b3beefb3 - IR: IrDelegatingConstructorCall.fromSymbolDescriptor (vor 7 Tagen) <Georgy Bronnikov>
* b28c85f5ea - IR: IrCall.fromSymbolDescriptor (vor 7 Tagen) <Georgy Bronnikov>
* ab3ef3a7e9 - IR: remove descriptor usage (vor 7 Tagen) <Georgy Bronnikov>
* 065edac64b - IR: remove unused functions (vor 7 Tagen) <Georgy Bronnikov>
* 726282c1ee - IR: remove a descriptor usage (vor 7 Tagen) <Georgy Bronnikov>
* c69402c800 - (tag: build-1.4.30-dev-1665) [Commonizer] Fix computing underlyingType and expandedType in CirTypeAlias (vor 7 Tagen) <Dmitriy Dolovov>
2020-10-26 19:12:20 +01:00
2020-05-20 19:52:35 +07:00
2020-09-29 15:17:35 +07:00
2017-03-30 09:51:58 +03:00
2019-10-25 16:05:35 +03:00
2019-12-02 09:55:51 +03:00
2020-09-16 12:23:50 +07:00
2020-09-16 12:23:50 +07:00
2018-09-13 11:48:42 +03:00
2020-07-20 15:42:43 +07:00
2020-09-08 11:11:43 +03:00
2020-10-06 11:22:14 +07:00

official project version

Kotlin/Native

Kotlin/Native is an LLVM backend for the Kotlin compiler, runtime implementation, and native code generation facility using the LLVM toolchain.

Kotlin/Native is primarily designed to allow compilation for platforms where virtual machines are not desirable or possible (such as iOS or embedded targets), or where a developer is willing to produce a reasonably-sized self-contained program without the need to ship an additional execution runtime.

Prerequisites:

  • install JDK for your platform, instead of JRE. The build requires tools.jar, which is not included in JRE;
  • on macOS install Xcode 11 (Xcode 12.0 is required to compile Kotlin/Native from sources)
  • on Fedora 26+ yum install ncurses-compat-libs may be needed
  • on recent Ubuntu apt install libncurses5 is needed

To compile from sources use following steps:

First, download dependencies:

./gradlew dependencies:update

Then, build the compiler and libraries:

./gradlew bundle

To build with experimental targets support compile with -Porg.jetbrains.kotlin.native.experimentalTargets.

The build can take about an hour on a Macbook Pro. To run a shorter build with only the host compiler and libraries, run:

./gradlew dist distPlatformLibs

To include Kotlin compiler in composite build and build against it, use the kotlinProjectPath project property:

./gradlew dist -PkotlinProjectPath=path/to/kotlin/project

It's possible to include in a composite build both Kotlin compiler and Kotlin/Native Shared simultaneously.

After that, you should be able to compile your programs like this:

export PATH=./dist/bin:$PATH
kotlinc hello.kt -o hello

For an optimized compilation, use -opt:

kotlinc hello.kt -o hello -opt

For tests, use:

./gradlew backend.native:tests:run

To generate interoperability stubs, create a library definition file (refer to samples/tetris/.../sdl.def), and run the cinterop tool like this:

cinterop -def lib.def

See the provided samples and INTEROP.md for more details.

The Interop tool generates a library in the .klib library format. See LIBRARIES.md for more details on this file format.

S
Description
The Kotlin Programming Language.
Readme 2.1 GiB
Languages
Kotlin 79.9%
Java 10.4%
Swift 4.3%
C 2.8%
C++ 2.1%
Other 0.3%