Implement reference counting (#592)

This commit is contained in:
Daniel Wirtz
2019-06-05 23:15:39 +02:00
committed by GitHub
parent 3ed76a97f0
commit 0484a6b740
601 changed files with 261645 additions and 146131 deletions

View File

@ -0,0 +1,14 @@
function getRef(): string {
return "";
}
// Assignment of a return value picks up its delayed release state and skips
// one set of retain/release.
var a: string = getRef();
var b = getRef(); // same, but inferred
// Unleak
a = /* __retainRelease( */ changetype<string>(0) /* , a) */;
b = /* __retainRelease( */ changetype<string>(0) /* , a) */;