language = C++ compilerOpts = -std=c++14 plugin = org.jetbrains.kotlin.native.interop.skia --- class CppTest { public: CppTest() { ++counter; } CppTest(const CppTest&) = default; explicit CppTest(int i, double j = 3.14) : iPub(i + int(j + 0.5)) {} ~CppTest() { --counter; } int iPub = 42; virtual int foo() { return iPub; } static int counter; static int s_fun() { return counter; } class Nested { public: int nestedFoo() { return -2; } } nested; // not supported yet operator CppTest::Nested() const; template void fooTmplMember() const; private: CppTest* funPrivate() const; static int s_funPrivate(); int iPriv; }; int CppTest::counter; CppTest retByValue(CppTest* s) { return s ? *s : CppTest(); }