chore(syntax): Test 仓 R1 + R12 迁移

R1:T | t.CPtr -> T*(40 文件 / 1121 处;含多级 **、强转位 (T*)(x)、下标内 list[AST*]);引号前向引用 'Rect' | t.CPtr 26 处按例外保留,T | t.CPtr | t.State 25 处因 T* 后不能接 | 保持原联合写法。

R12:i = 0 + while i < N: + 尾 i += 1 -> or i in range(N):(10 文件 / 42 处;含 <= -> range(EXPR + 1)、带注解初始化 i: int = 0、尾 i = i + 1)。余 20 处经守卫判定不可安全改写(复合条件 1、尾部非自增 8、体内重绑定/continue 5、while-else 2、循环后仍被读取 2、找不到初始化 2)。
This commit is contained in:
TermiNexus committed 2026-10-05 21:18:37 +08:00
1 parent f5da836fbb
commit aa5a7e7250
43 files changed
+851 -935

No files matched your search

+7 -7
View File
@@ -45,7 +45,7 @@ def _basic_worker(arg: t.CPtr) -> t.CPtr:
# 传参: 通过 arg 指针自增 100 次(c.Deref/c.DerefAs 读写)
def _increment_worker(arg: t.CPtr) -> t.CPtr:
ip: int | t.CPtr = (int | t.CPtr)(arg)
ip: int* = (int*)(arg)
i: int
for i in range(100):
c.DerefAs(ip, *ip + 1)
@@ -54,7 +54,7 @@ def _increment_worker(arg: t.CPtr) -> t.CPtr:
# Lock: 持锁自增全局计数器
def _lock_worker(arg: t.CPtr) -> t.CPtr:
lk: vthreading.Lock | t.CPtr = (vthreading.Lock | t.CPtr)(arg)
lk: vthreading.Lock* = (vthreading.Lock*)(arg)
global _shared_count
for i in range(LOCK_ITER):
lk.acquire()
@@ -65,7 +65,7 @@ def _lock_worker(arg: t.CPtr) -> t.CPtr:
# Event: 等待事件被唤醒后置位完成标志
def _event_worker(arg: t.CPtr) -> t.CPtr:
ev: vthreading.Event | t.CPtr = (vthreading.Event | t.CPtr)(arg)
ev: vthreading.Event* = (vthreading.Event*)(arg)
global _evt_done
r: int = ev.wait(5000)
if r == 1:
@@ -75,7 +75,7 @@ def _event_worker(arg: t.CPtr) -> t.CPtr:
# Condition 消费者: 循环等待 _cond_ready 就绪(限次防挂起)
def _cond_consumer(arg: t.CPtr) -> t.CPtr:
cond: vthreading.Condition | t.CPtr = (vthreading.Condition | t.CPtr)(arg)
cond: vthreading.Condition* = (vthreading.Condition*)(arg)
global _cond_ready
tries: int = 0
cond.acquire()
@@ -88,7 +88,7 @@ def _cond_consumer(arg: t.CPtr) -> t.CPtr:
# Condition 生产者: 延迟后置位 _cond_ready 并 notify
def _cond_producer(arg: t.CPtr) -> t.CPtr:
cond: vthreading.Condition | t.CPtr = (vthreading.Condition | t.CPtr)(arg)
cond: vthreading.Condition* = (vthreading.Condition*)(arg)
global _cond_ready
vthreading.sleep_ms(50)
cond.acquire()
@@ -100,7 +100,7 @@ def _cond_producer(arg: t.CPtr) -> t.CPtr:
# RWLock 读者: 持读锁反复读共享值
def _rw_reader(arg: t.CPtr) -> t.CPtr:
rwl: vthreading.RWLock | t.CPtr = (vthreading.RWLock | t.CPtr)(arg)
rwl: vthreading.RWLock* = (vthreading.RWLock*)(arg)
global _rw_value
i: int
for i in range(RW_ITER * 10):
@@ -112,7 +112,7 @@ def _rw_reader(arg: t.CPtr) -> t.CPtr:
# RWLock 写者: 持写锁自增共享值
def _rw_writer(arg: t.CPtr) -> t.CPtr:
rwl: vthreading.RWLock | t.CPtr = (vthreading.RWLock | t.CPtr)(arg)
rwl: vthreading.RWLock* = (vthreading.RWLock*)(arg)
global _rw_value
i: int
for i in range(RW_ITER):