Vasily Levchenko 1479997665 [kotlin compiler][update] 1.4.0-dev-3197
* 62e335ac88 - (tag: build-1.4.0-dev-3197) Implement members: fix it works correctly for data class (vor 18 Stunden) <Toshiaki Kameyama>
* fe009ac695 - (tag: build-1.4.0-dev-3193) IR: restore reading common Klib from JVM (vor 27 Stunden) <Georgy Bronnikov>
* d54a35ef56 - (tag: build-1.4.0-dev-3191) Add "Remove argument" quick fix for TOO_MANY_ARGUMENTS (vor 29 Stunden) <Toshiaki Kameyama>
* 13afb2e45e - (tag: build-1.4.0-dev-3189) Make kotlin build version for buildSrc the same as for kotlin project (vor 33 Stunden) <nataliya.valtman>
* 699ea0aa2b - (tag: build-1.4.0-dev-3179) Replace 'if' with 'when': don't swallow comments if there is no synthetic else branch (vor 2 Tagen) <Toshiaki Kameyama>
* f487118be5 - (tag: build-1.4.0-dev-3176) Change signature: fix it works correctly when call site function has no value argument list (vor 2 Tagen) <Toshiaki Kameyama>
* 223ed1ad60 - (tag: build-1.4.0-dev-3175) KT-27601 review fixes (vor 2 Tagen) <kvirolainen>
* 90cfa80683 - KT-27601 keep imports for extension functions used in kdoc (vor 2 Tagen) <kvirolainen>
* 423aeb9a08 - (tag: build-1.4.0-dev-3172) Always check project.useCompositeAnalysis in findAnalyzerServices (vor 3 Tagen) <Dmitry Savvinov>
* e56abcbb85 - (tag: build-1.4.0-dev-3170) Inline variable: fix it works correctly for 'when' subject variable (vor 3 Tagen) <Toshiaki Kameyama>
* d8ab046136 - (tag: build-1.4.0-dev-3168) Convert property to function: remove annotation use-site target (vor 3 Tagen) <Toshiaki Kameyama>
* d5e71ebef1 - (tag: build-1.4.0-dev-3166) Invert if condition intention: 'isEmpty' <-> 'isNotEmpty' (vor 3 Tagen) <Toshiaki Kameyama>
* 79c15e49b6 - (tag: build-1.4.0-dev-3165) Convert function to property: suggest on fun keyword (vor 3 Tagen) <Toshiaki Kameyama>
* 820b8c3c54 - (tag: build-1.4.0-dev-3163) Introduce "Redundant '?: return null'" inspection (vor 3 Tagen) <Toshiaki Kameyama>
* 5f1cc3b152 - Introduce "Redundant 'inner' modifier" inspection (vor 3 Tagen) <Toshiaki Kameyama>
* d76dc6f57e - (tag: build-1.4.0-dev-3160) [Commonizer] Call commonizer on Gradle configuration phase (vor 3 Tagen) <Dmitriy Dolovov>
* f2f95496e3 - (tag: build-1.4.0-dev-3159) [NI] Complete contradictory candidates inside builder-inference (vor 3 Tagen) <Mikhail Zarechenskiy>
* 3398683093 - (tag: build-1.4.0-dev-3149) Unused symbol: do not report for secondary constructor when class is used as typealias (vor 3 Tagen) <Toshiaki Kameyama>
* 81f1f441fc - (tag: build-1.4.0-dev-3145) [FIR] Add stub default values to kotlin.Enum constructor parameters (vor 3 Tagen) <Mikhail Glukhikh>
* 39bd97147f - [FIR] Don't create initializers for simple enum entries (vor 3 Tagen) <Mikhail Glukhikh>
* b1e9dbf994 - [FIR] Use super<Enum> as delegated calls in enum constructors (vor 3 Tagen) <Mikhail Glukhikh>
* f173af9238 - FIR2IR: use enum constructor call for enum entries (vor 3 Tagen) <Mikhail Glukhikh>
* 9e3f17c52a - (tag: build-1.4.0-dev-3144) [FIR TEST] Add test for unresolved reference in default argument (vor 3 Tagen) <Mikhail Glukhikh>
* a3252b9480 - Unused symbol: fix false positive in anonymous object in top level or companion object (vor 3 Tagen) <Toshiaki Kameyama>
* ef1e54eda9 - (tag: build-1.4.0-dev-3143) ReplaceToStringWithStringTemplateInspection: insert curly braces if needed (vor 3 Tagen) <Toshiaki Kameyama>
* c87bc2123c - (tag: build-1.4.0-dev-3142) Add "Change to val" quick fix for MUST_BE_INITIALIZED (vor 3 Tagen) <Toshiaki Kameyama>
* a46c6ce5df - Revert global project settings to LATEST_STABLE in teardown (vor 3 Tagen) <Nikolay Krasko>
* f995192f21 - Always configure and restore api version settings in tests (vor 3 Tagen) <Nikolay Krasko>
* 6c83e9fb85 - Clean LANGUAGE_VERSION_SETTINGS after the test (vor 3 Tagen) <Nikolay Krasko>
* 19bc39d3ab - Clean facet if it wasn't set before test (fix tests on 201) (vor 3 Tagen) <Nikolay Krasko>
* af3b057ba2 - Always clean language and api versions after usage (vor 3 Tagen) <Nikolay Krasko>
* c0dac9bf32 - Refactoring: extract long function out of local context (vor 3 Tagen) <Nikolay Krasko>
* 3a5f42cc5e - Refactoring: always use compiler settings with de-configuration in tests (vor 3 Tagen) <Nikolay Krasko>
* 018215f47d - De-bunch KotlinLightCodeInsightFixtureTestCase.kt (vor 3 Tagen) <Nikolay Krasko>
* 94be4d77ff - Fix init order in inline fun (native test) (vor 3 Tagen) <Pavel Punegov>
* 19093e2e02 - (tag: build-1.4.0-dev-3140) Redundant companion reference: fix false positive when companion has same name member as companion name (vor 3 Tagen) <Toshiaki Kameyama>
* 98ce49ba73 - [build][native] version with milestone clause (vor 3 Tagen) <Vasily Levchenko>
2020-02-25 10:28:24 +01:00
2019-11-04 15:13:27 +03:00
2019-12-27 11:01:09 +03:00
2019-11-28 12:20:29 +07:00
2019-03-21 14:16:25 +03:00
2020-02-19 10:48:24 +01: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%