12 lines
638 B
Plaintext
12 lines
638 B
Plaintext
extern def malloc(size: sizet) -> rawptr
|
||
extern def calloc(nmemb: sizet, size: sizet) -> rawptr
|
||
extern def realloc(p: rawptr, size: sizet) -> rawptr
|
||
# P2 生命期标注:被标注的形参所指对象在**本调用返回后失效**(由被调用者释放/接管)。
|
||
# 调用点据此把对应实参变量槽标为"已失效",其后读/取址/再传 → LifetimeError(fail-fast)。
|
||
# 写法二选一:形参名 willFree(p) 或形参位置序号 willFree(0)(0 起,self/cls 计入)。
|
||
@life(willFree(p))
|
||
extern def free(p: rawptr)
|
||
@life(noescape(cmd))
|
||
extern def system(cmd: const str) -> int
|
||
extern def exit(status: int)
|