Poulad
09/10/2022, 12:31 AMprintln
works and i see the message in browser console.
how can i use alert()
JS function from WASM with this setup?
i was looking at various docs e.g. https://kotlinlang.org/docs/js-interop.html#external-modifier
code:
https://github.com/poulad/poulardo.kt/blob/28ed3fb8ee9867f528aa91a38f21deb34d6bee2[…]-wasm/src/nativeMain/kotlin/io/github/poulad/webappwasm/Main.kt
build error:
$ ./gradlew nativeBinaries
Starting a Gradle Daemon, 1 incompatible and 6 stopped Daemons could not be reused, use --status for details
Configuration cache is an incubating feature.
Configuration on demand is an incubating feature.
Calculating task graph as configuration cache cannot be reused because file 'webapp-wasm\build.gradle.kts' has changed.
> Task :webapp-wasm:linkDebugExecutableNative
e: Compilation failed: external function <root>.alert must have @TypedIntrinsic, @SymbolName, @GCUnsafeCall or @ObjCMethod annotation
* Source files:
* Compiler version info: Konan: 1.6.21 / Kotlin: 1.6.21
* Output kind: PROGRAM
e: java.lang.Error: external function <root>.alert must have @TypedIntrinsic, @SymbolName, @GCUnsafeCall or @ObjCMethod annotation
at org.jetbrains.kotlin.backend.konan.descriptors.DescriptorUtilsKt.externalSymbolOrThrow(DescriptorUtils.kt:309)
at org.jetbrains.kotlin.backend.konan.llvm.KonanBinaryInterface.funSymbolNameImpl(BinaryInterface.kt:58)
at org.jetbrains.kotlin.backend.konan.llvm.KonanBinaryInterface.getSymbolName(BinaryInterface.kt:41)
at org.jetbrains.kotlin.backend.konan.llvm.BinaryInterfaceKt.computeSymbolName(BinaryInterface.kt:119)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitFunction(LlvmDeclarations.kt:355)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid$DefaultImpls.visitSimpleFunction(IrElementVisitorVoid.kt:52)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitSimpleFunction(LlvmDeclarations.kt:97)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid$DefaultImpls.visitSimpleFunction(IrElementVisitorVoid.kt:53)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitSimpleFunction(LlvmDeclarations.kt:97)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitSimpleFunction(LlvmDeclarations.kt:97)
at org.jetbrains.kotlin.ir.declarations.IrSimpleFunction.accept(IrSimpleFunction.kt:28)
at org.jetbrains.kotlin.ir.declarations.impl.IrFileImpl.acceptChildren(IrFileImpl.kt:84)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoidKt.acceptChildrenVoid(IrElementVisitorVoid.kt:287)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitElement(LlvmDeclarations.kt:148)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid$DefaultImpls.visitPackageFragment(IrElementVisitorVoid.kt:30)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitPackageFragment(LlvmDeclarations.kt:97)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid$DefaultImpls.visitFile(IrElementVisitorVoid.kt:37)
at org.jetbrains.kotlin.backend.konan.llvm.DeclarationsGeneratorVisitor.visitFile(LlvmDeclarations.kt:97)
at org.jetbrains.kotlin.ir.visitors.IrElementVisitorVoid$DefaultImpls.visitFile(IrElementVisitorVoid.kt:38)
Big Chungus
09/10/2022, 1:01 PMBig Chungus
09/10/2022, 1:03 PMBig Chungus
09/10/2022, 1:03 PMPoulad
09/10/2022, 11:49 PMBig Chungus
09/11/2022, 2:31 AMbashor
09/12/2022, 2:35 PM