12.6.7.2 CPP0001 - 누락된 값 의미론(Missing Value Semantics)

12.6.7.2 CPP0001 - 누락된 값 의미론(Missing Value Semantics)

설명(Description)

생성된 코드가 건전하도록 네이티브 마셜링 타입은 값 의미론(Value Semantics)으로 주석 처리되어야 합니다. :cpp.ValueType 또는 :cpp.PointerType으로 주석 처리되었지만 :semantics(value)가 없는 클래스나 enum은 이 오류를 생성합니다.

예제(Examples)

다음 예제들은 CPP0001을 생성합니다.

// CPP0001
@:cpp.ValueType
extern class Foo {
    function new():Void;
}

function main() {
    final f = new Foo();
}
// CPP0001
@:cpp.ValueType
extern enum abstract Foo(Int) {
    var Bar;
    var Baz;
}

function main() {
    final f = Foo.Bar;
}
// CPP0001
@:cpp.PointerType
extern class Foo {}

function main() {
    final f : Foo = null;
}

출처: CPP0001 - Missing Value Semantics

더 알아보기