Vasily Levchenko aee9bcfed0 [kotlin compiler][update] 1.4.0-dev-3529
* 266149b88c - (tag: build-1.4.0-dev-3529) RedundantLetInspection: fix false positive with nullable receiver extension call (vor 6 Stunden) <Toshiaki Kameyama>
* a6139f3635 - (tag: build-1.4.0-dev-3528) Wizard: minor: fix YamlParsingError package (vor 15 Stunden) <Ilya Kirillov>
* a9c96a7cde - Wizard: move downloading Kotlin version phase to the end (vor 18 Stunden) <Ilya Kirillov>
* a03510e3c0 - Wizard: add tags for project templates (vor 18 Stunden) <Ilya Kirillov>
* d639816393 - Wizard: use kotlinx-collections-immutable for storing IRs (vor 18 Stunden) <Ilya Kirillov>
* e38448c6f2 - (tag: build-1.4.0-dev-3527, tag: build-1.4.0-dev-3524, tag: build-1.4.0-dev-3522, tag: build-1.4.0-dev-3519, tag: build-1.4.0-dev-3515) No need to hack PsiSubstitutor anymore in AS 40 (KT-36039) (vor 2 Tagen) <Nikolay Krasko>
* b1ca06b21d - (tag: build-1.4.0-dev-3513) Build: Add missing tools.jar to performance tests runtime (vor 2 Tagen) <Vyacheslav Gerasimov>
* 05b5894ef1 - (tag: build-1.4.0-dev-3507) Build: Use configurations property for shadowJar in :kotlin-main-kts (vor 2 Tagen) <Vyacheslav Gerasimov>
* 0db69cadb6 - Build: Make all compile dependencies on toolsJar compileOnly (vor 2 Tagen) <Vyacheslav Gerasimov>
* 8e0f403f02 - Build: normalize inputs of :kotlin-reflect:stripMetadata as classpath (vor 2 Tagen) <Vyacheslav Gerasimov>
* 6e2fb72bb6 - Build: Make :kotlin-reflect:relocateCoreSources task cacheable (vor 2 Tagen) <Vyacheslav Gerasimov>
* 0ebc11270b - Build: Remove duplicated manifestAttributes call from reflectShadowJar (vor 2 Tagen) <Vyacheslav Gerasimov>
* 54d8afea40 - Build: Disable caching for Test tasks until we are sure it is safe (vor 2 Tagen) <Vyacheslav Gerasimov>
* 5195cc8c12 - Build: Add buildserver.labs.intellij.net to valid hosts in caching check (vor 2 Tagen) <Vyacheslav Gerasimov>
* b64c7cce84 - Build: Use Jar task for :kotlin-compiler:packCompiler (vor 2 Tagen) <Vyacheslav Gerasimov>
* 35c4cc6d45 - Build: Use Jar task instead ShadowJar task in :kotlin-daemon-client-new (vor 2 Tagen) <Vyacheslav Gerasimov>
* 07949aaf4f - Build: Use Jar task instead ShadowJar task in :kotlin-daemon (vor 2 Tagen) <Vyacheslav Gerasimov>
* 6c8c126ebc - (tag: build-1.4.0-dev-3506) as40: Update to AS 4.0 Beta 1 (vor 2 Tagen) <Vyacheslav Gerasimov>
* 7359bb8a00 - (tag: build-1.4.0-dev-3503) Fix tests freeze because of ScriptChangesNotifier (KT-37112) (vor 3 Tagen) <Sergey Rostov>
* 03913ff029 - (tag: build-1.4.0-dev-3501) KT-33119 Generate IINC for primitive types only (vor 3 Tagen) <Dmitry Petrov>
* 2010d8d2b9 - (tag: build-1.4.0-dev-3500) KT-36956 fix back-end part in JVM and JVM_IR (vor 3 Tagen) <Dmitry Petrov>
* f764d3a021 - (tag: build-1.4.0-dev-3498) testCompileOnlyDependencyProcessingForMetadataCompilations -> Gradle 5+ (vor 3 Tagen) <Sergey Igushkin>
* b8602fa31a - Fix missing installation dependencies in Gradle integration tests (vor 3 Tagen) <Sergey Igushkin>
* 197e096017 - (tag: build-1.4.0-dev-3497) Disable PerformanceNativeProjectsTest (vor 3 Tagen) <Vladimir Dolzhenko>
* bc0e466981 - Add undo typing kts performance test (vor 3 Tagen) <Vladimir Dolzhenko>
* 4ac45eb38b - (tag: build-1.4.0-dev-3494) JVM IR: Fix inline class constructors taking default values of inline class type. (vor 3 Tagen) <Steven Schäfer>
* 846e50a0c0 - (tag: build-1.4.0-dev-3478) Backport ActionUtil.underModalProgress to fix 191/192 compilation (vor 3 Tagen) <Vladimir Dolzhenko>
* d47fc7280b - (tag: build-1.4.0-dev-3475) Fix testUnresolvedMultiline test data (vor 3 Tagen) <Nikolay Krasko>
* 50c92f2a05 - Bad string interpolation for empty string in batch (KT-37090) (vor 3 Tagen) <Nikolay Krasko>
* b173284d1d - (tag: build-1.4.0-dev-3473) Add tests for super calls in inline classes (vor 3 Tagen) <Steven Schäfer>
* 0fe8fec1d1 - Mute FIR tests (vor 3 Tagen) <Steven Schäfer>
* 465e9f2d68 - JVM IR: Always produce stubs for interface methods in inline classes (vor 3 Tagen) <Steven Schäfer>
* 8c9ebc1bf9 - JVM IR: Initialize parent field in InlineCallableReferenceToLambda (vor 3 Tagen) <Steven Schäfer>
* c2eab08cc9 - (tag: build-1.4.0-dev-3467) FIR: fix arose problem with smartcast un-stability (vor 3 Tagen) <Mikhail Glukhikh>
* d5fbd93fe6 - Unmute additional FIR black box tests (vor 3 Tagen) <Mikhail Glukhikh>
* 9e69ffad36 - FIR2IR (refactoring): introduce ConversionTypeContext (vor 3 Tagen) <Mikhail Glukhikh>
* 883dd95e3c - FIR: fix class / constructor type parameter duplication (vor 3 Tagen) <Mikhail Glukhikh>
* 2308e5bb7c - FIR2IR: in case of use-site generic type use call from original class (vor 3 Tagen) <Mikhail Glukhikh>
* 096dc25701 - FIR: change callableId of fake overrides to derived class owner (vor 3 Tagen) <Mikhail Glukhikh>
* db7401d8eb - FIR2IR: set GET_PROPERTY origin for property reads (vor 3 Tagen) <Mikhail Glukhikh>
* e066afc67f - FIR2IR: set parents for external enum entries (vor 3 Tagen) <Mikhail Glukhikh>
* 5b3b35cd78 - FIR2IR: set "external stub" origin for external enum entries (vor 3 Tagen) <Mikhail Glukhikh>
* 3a3d6e740c - FIR2IR: correctly set type parameters of property accessors (vor 3 Tagen) <Mikhail Glukhikh>
* 50abb07245 - [FIR] Record & use type arguments of FirQualifiedAccessExpression (vor 3 Tagen) <Mikhail Glukhikh>
* f53b059410 - (tag: build-1.4.0-dev-3460) [Gradle, tests] Fix native compiler arguments test for Windows (vor 3 Tagen) <Ilya Matveev>
* 0b9106b0f8 - (tag: build-1.4.0-dev-3457) CanBePrimaryConstructorPropertyInspection: do not report for 'open' property used in class initializer in 'open' class (vor 3 Tagen) <Toshiaki Kameyama>
* 963258189a - (tag: build-1.4.0-dev-3455) JVM_IR: change parameter type computation in InlineCallableReferenceToLambda (vor 3 Tagen) <Georgy Bronnikov>
* 456139fc5e - (tag: build-1.4.0-dev-3451) JVM_IR: cache signatures in BridgeLowering (vor 3 Tagen) <pyos>
* 97e320b57f - (tag: build-1.4.0-dev-3446) Don't show IR_COMPILED_CLASS error in IJ when it arises in module with backend IR enabled (vor 3 Tagen) <Ilya Kirillov>
* 7a4d414c59 - (tag: build-1.4.0-dev-3445) 201: Mute SuggestedRefactoring tests (vor 3 Tagen) <Nikolay Krasko>
* 6a9dfd4935 - 201: Mute HierarchicalMultiplatformProjectImportingTest: No module dependency found (vor 3 Tagen) <Nikolay Krasko>
* 774db02b23 - 201: Mute quick fix tests: Range must be inside element being annotated (vor 3 Tagen) <Nikolay Krasko>
* 06adac1abf - 201: Mute TodoSearchTest: duplicate TODO items (vor 3 Tagen) <Nikolay Krasko>
* 543168c61d - 201: Mute incremental compilation tests with constants (vor 3 Tagen) <Nikolay Krasko>
* 8501ea78c8 - 201: Mute a lot of tests with enums (vor 3 Tagen) <Nikolay Krasko>
* 79e663828a - 201: Mute QuickFixTestGenerate: Range must be inside element being annotated (vor 3 Tagen) <Nikolay Krasko>
* f5a97ea56e - 201: Mute GradleScriptInputsWatcherTest failures (vor 3 Tagen) <Nikolay Krasko>
* dad7fd383c - 201: Upgrade nodejs plugin in 201 branch (vor 3 Tagen) <Nikolay Krasko>
* f0a4f838f2 - 201: Mute NewMultiplatformProjectImportingTest tests (vor 3 Tagen) <Nikolay Krasko>
* f4cd25ce72 - 201: Mute MultiplatformProjectImportingTest tests (vor 3 Tagen) <Nikolay Krasko>
* 67dee52b8a - 201: Mute NewJavaToKotlinConverterSingleFileTestGenerated tests (vor 3 Tagen) <Nikolay Krasko>
* 958b8a0b10 - 201: Fix maven plugin loading by adding repository-search to runtime (vor 3 Tagen) <Nikolay Krasko>
* 0fcd011abb - 201: Fix loading project in configuration tests (vor 3 Tagen) <Nikolay Krasko>
* 1a01ba0ae5 - 201: Trick idea home path exception with custom `idea.home` variable (vor 3 Tagen) <Nikolay Krasko>
* da2683d180 - Copy 192 muted tests (vor 3 Tagen) <Nikolay Krasko>
* dd21736471 - Register JDK for default project to prevent create leaking one for Gradle import (vor 3 Tagen) <Nikolay Krasko>
* c9fd79c311 - Enable mute in code for all KotlinLightCodeInsightFixtureTestCaseBase (vor 3 Tagen) <Nikolay Krasko>
* 1c0a9d2981 - Minor: better asserts in TodoSearchTest.kt (vor 3 Tagen) <Nikolay Krasko>
* 26df2a5c68 - Enable mute test with database in BaseKotlinJpsBuildTestCase (vor 3 Tagen) <Nikolay Krasko>
* 31ba40cc99 - Ignore auto-mute files (vor 3 Tagen) <Nikolay Krasko>
* c22272bbca - Enable mute for KotlinCompletionTestCase (vor 3 Tagen) <Nikolay Krasko>
* 66e2f95dba - Update method after UsefulTestCase update to make in work in 201 (vor 3 Tagen) <Nikolay Krasko>
* 3c3b1bb5e4 - Support auto-mute in parametrized JUnit 4 tests (vor 3 Tagen) <Nikolay Krasko>
* f042b04320 - Minor: remove unneeded class (vor 3 Tagen) <Nikolay Krasko>
* 14f7529c1b - (tag: build-1.4.0-dev-3444) [NI] Reanalyze coroutine-block if there is inapplicable call (vor 3 Tagen) <Mikhail Zarechenskiy>
* aab8555d65 - (tag: build-1.4.0-dev-3442) Move adjustExtractionData.performAnalysis under modal progress (vor 3 Tagen) <Vladimir Dolzhenko>
* ec431460b3 - Do not lookup for kotlin tests in non kotlin files (vor 3 Tagen) <Vladimir Dolzhenko>
* 2a27ca828c - Commit document before actual imports optimization (vor 3 Tagen) <Vladimir Dolzhenko>
* acc4118903 - Provide import alias suggestion for Companion (vor 3 Tagen) <Vladimir Dolzhenko>
* 3ec2095c9f - Don't log ControlFlowException (vor 3 Tagen) <Vladimir Dolzhenko>
* 3881220386 - (tag: build-1.4.0-dev-3441) JVM IR: Box arguments in abstract method stubs for "remove" bridges (vor 3 Tagen) <Steven Schäfer>
* 86f9cb6eef - (tag: build-1.4.0-dev-3435) Adds AdditionalExtractableAnalyser EP. (vor 3 Tagen) <kovalp>
* b53cb5cb4c - (tag: build-1.4.0-dev-3426) Cover with a test current Double/Float companion values access (vor 3 Tagen) <Ilya Gorbunov>
* 1f47c6d54f - (tag: build-1.4.0-dev-3425) Add missed calcHashCode for ModuleSourceScope subclasses (vor 4 Tagen) <Vladimir Dolzhenko>
* 035cc57cf4 - (tag: build-1.4.0-dev-3420) JVM_IR: don't remap current method signature when detecting clashes (vor 4 Tagen) <pyos>
* ad0070ed8a - (tag: build-1.4.0-dev-3419) KT-37059 Support 'String?.plus(Any?)' in JVM_IR (vor 4 Tagen) <Dmitry Petrov>
* f9483b1f4f - (tag: build-1.4.0-dev-3400) [FIR] KT-37027: Add 'out' projection to vararg elements (vor 4 Tagen) <simon.ogorodnik>
* f405b3f827 - [FIR] Reorganize ConeKotlinTypeProjection hierarchy (vor 4 Tagen) <simon.ogorodnik>
* 7c4f59dfcb - [FIR] KT-37009: Fix loss of bound smart-cast due to synthetic removal (vor 4 Tagen) <simon.ogorodnik>
* ec936b7286 - [FIR] Setup FIR tests configuration (vor 4 Tagen) <simon.ogorodnik>
* fbf4abf0cf - (tag: build-1.4.0-dev-3399) FIR: Unignore FIR2IR test (vor 4 Tagen) <Denis Zharkov>
* 53454a783c - (tag: build-1.4.0-dev-3398) Fix project compilation (vor 4 Tagen) <Denis Zharkov>
* 8fca343ef0 - (tag: build-1.4.0-dev-3395) FIR: Support FirComparisonOperator in Fir2Ir (vor 4 Tagen) <Denis Zharkov>
* 434444cd69 - FIR: Support FirComparisonOperator in body transformers and DFA (vor 4 Tagen) <Denis Zharkov>
* c3aed433ae - FIR: Support FirComparisonOperator in builders (vor 4 Tagen) <Denis Zharkov>
* 80b7fbd07a - FIR: Add new nodes kind for comparison operator (vor 4 Tagen) <Denis Zharkov>
* 3ecee5c7cd - (tag: build-1.4.0-dev-3389) [JS IR BE] Implement kotlin.js.jsTypeOf as intrinsics (vor 4 Tagen) <Svyatoslav Kuzmich>
* dff7d7b7b9 - [PSI2IR] Patch parents before referenceExpectsForUsedActuals (vor 4 Tagen) <Svyatoslav Kuzmich>
* 1e02fa3db9 - [JS IR BE] Create temporary variables with wrapped descriptors. (vor 4 Tagen) <Svyatoslav Kuzmich>
* 8877bac873 - [JS IR BE] Don't fail typeOf lowering on reified type parameters. (vor 4 Tagen) <Svyatoslav Kuzmich>
* b359bf1859 - [JS IR BE] Stop checking mangling for klib-to-js compilation. (vor 4 Tagen) <Svyatoslav Kuzmich>
* cd80eced32 - [JS IR BE] Use fresh name for external JsModule declarations. (vor 4 Tagen) <Svyatoslav Kuzmich>
* 5c6f452c10 - (tag: build-1.4.0-dev-3386) Revert "add cleanup dependencies tasks for buildSrc" (vor 4 Tagen) <nataliya.valtman>
* e7816b4ec2 - (tag: build-1.4.0-dev-3383) JS: support callable references with vararg and default parameters conversion (vor 4 Tagen) <Anton Bannykh>
* f6a23ea441 - [FIR] Add infrastructure for call checkers (vor 4 Tagen) <Dmitriy Novozhilov>
* 9cee2962db - [FIR] Add more nodes for declaration checkers (vor 4 Tagen) <Dmitriy Novozhilov>
* 04424a1ec3 - (tag: build-1.4.0-dev-3382) Reduce UI freezes by preparing affected Gradle project files lists in advance, once per event. isRelevant() method is a hotspot, as it is called for each file in bulk VFS event (vor 4 Tagen) <Nikita Skvortsov>
* a9e03937a3 - (tag: build-1.4.0-dev-3381) Minor. Update tests to support them on Android (vor 4 Tagen) <Mikhael Bogdanov>
* 8a8536f8ae - (tag: build-1.4.0-dev-3379, minamoto/1.4.0/rr/build/konan-version) add cleanup dependencies tasks for buildSrc (vor 4 Tagen) <nataliya.valtman>
* ea7b5827ab - Minor: update testData for bytecode listing tests (vor 4 Tagen) <Dmitry Petrov>
* 5827be4182 - (tag: build-1.4.0-dev-3371) Tests: fix test for AS 3.6 (vor 4 Tagen) <Dmitry Gridin>
* ca3c72c143 - (tag: build-1.4.0-dev-3369) IDE perf tests for Kotlin/Native projects (vor 4 Tagen) <Dmitriy Dolovov>
* f5e6001d82 - (tag: build-1.4.0-dev-3366) Registry key to show hidden variables in debugger. (vor 4 Tagen) <Vladimir Ilmov>
* e19c0c9768 - (tag: build-1.4.0-dev-3360) Update idea-completion testData after introducing vararg maxOf/minOf (vor 4 Tagen) <Abduqodiri Qurbonzoda>
* 12bf8a44e7 - (tag: build-1.4.0-dev-3357) Minor changes after code review (vor 5 Tagen) <Valentin Kipyatkov>
* b9a9000569 - Suggested Rename and Change Signature implementation for Kotlin (vor 5 Tagen) <Valentin Kipyatkov>
* a01b840eab - (tag: build-1.4.0-dev-3353) Android Import: Search for Android SDK using public API instead of reflection (vor 5 Tagen) <Vyacheslav Karpukhin>
* ec23c25286 - (tag: build-1.4.0-dev-3351, tag: build-1.4.0-dev-3350) [Commonizer] Friendly displaying commonized KLIBs in IDE (vor 5 Tagen) <Dmitriy Dolovov>
* 23e218396e - (tag: build-1.4.0-dev-3341, tag: build-1.4.0-dev-3339) JS: support SAM conversion (vor 5 Tagen) <Anton Bannykh>
* 2742e643c1 - JS: prohibit `external fun interface` (vor 5 Tagen) <Anton Bannykh>
* f20ed39b92 - Fix a typo in an error message (vor 5 Tagen) <Anton Bannykh>
* a01e66a618 - Run IrJsTypeScriptExportTestGenerated tests with `jsIrTest` instead of `jsTest` (vor 5 Tagen) <Anton Bannykh>
* c1d350f8f3 - [JVM IR] Added null-checks of handler for non-super $default calls (vor 5 Tagen) <Kristoffer Andersen>
* fe50bb4b93 - (tag: build-1.4.0-dev-3333) KProperty and ReadOnlyProperty type parameter names #KT-16529 (vor 5 Tagen) <Abduqodiri Qurbonzoda>
2020-03-02 15:58:18 +01:00
2019-11-04 15:13:27 +03:00
2019-12-27 11:01:09 +03:00
2020-02-27 16:38:43 +01:00
2019-11-28 12:20:29 +07:00
2019-03-21 14:16:25 +03:00
2017-03-30 09:51:58 +03:00
2019-12-18 16:58:28 +03:00
2019-10-25 16:05:35 +03:00
2019-12-02 09:55:51 +03:00
2019-11-28 12:20:29 +07:00
2019-07-10 15:29:45 +07:00
2019-12-09 10:14:07 +07:00
2018-09-13 11:48:42 +03:00
2017-04-28 17:05:20 +02:00
2020-02-06 11:12:49 +03:00
2019-01-30 19:11:11 +03:00
2019-09-28 09:53:20 +03:00
2019-09-28 09:53:20 +03: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
  • 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%