Calling Kotlin from C++ runtime (#107)
* backend: support exporting Kotlin functions for C++ runtime
* runtime: implement several functions in Kotlin
* Throw{NullPointer,ArrayIndexOutOfBounds,ClassCast}Exception
* runtime: add literal declared in Kotlin as empty string
Also
* add corresponding test
* use empty string literal in strdedup2
(however keep it disabled)
* fixup! runtime: add literal declared in Kotlin as empty string
* Review feedback: add more TheEmptyString() usages
Also improve string index checks in runtime
This commit is contained in:
committed by
Nikolay Igotti
parent
f9167ea91e
commit
e38ac775ad
@@ -323,6 +323,11 @@ task tostring2(type: RunKonanTest) {
|
||||
source = "runtime/basic/tostring2.kt"
|
||||
}
|
||||
|
||||
task empty_substring(type: RunKonanTest) {
|
||||
goldValue = "\n"
|
||||
source = "runtime/basic/empty_substring.kt"
|
||||
}
|
||||
|
||||
task array0(type: RunKonanTest) {
|
||||
goldValue = "5\n6\n7\n8\n9\n10\n11\n12\n13\n"
|
||||
source = "runtime/basic/array0.kt"
|
||||
@@ -395,7 +400,9 @@ task strdedup1(type: RunKonanTest) {
|
||||
}
|
||||
|
||||
/*
|
||||
TODO: enable after supporting Unit object
|
||||
TODO: string deduplication across several components seems to require
|
||||
linking them as bitcode modules before translating to machine code.
|
||||
|
||||
task strdedup2(type: RunKonanTest) {
|
||||
goldValue = "true\ntrue\n"
|
||||
source = "datagen/literals/strdedup2.kt"
|
||||
|
||||
Reference in New Issue
Block a user