stage1 禁止隐式调用 修复bug

This commit is contained in:
zzy
2026-07-12 11:43:27 +08:00
parent 118c153280
commit 9b9b25ce0f
5 changed files with 23 additions and 17 deletions

View File

@@ -156,23 +156,23 @@ fn test_nested_struct() i32 {
fn test_struct_method() i32 {
var c: Counter = Counter { .val = 0 };
/* 实例方法调用 c.inc() */
var r1: i32 = c.inc();
/* 实例方法调用 c.inc(&c) */
var r1: i32 = c.inc(&c);
if r1 != 1 { ret 1; }
if c.val != 1 { ret 2; }
/* 带参数方法调用 c.add(n) */
var r2: i32 = c.add(5);
/* 带参数方法调用 c.add(&c, n) */
var r2: i32 = c.add(&c, 5);
if r2 != 6 { ret 3; }
if c.val != 6 { ret 4; }
/* 连续调用 */
c.reset();
/* 连续调用 (显式 self) */
c.reset(&c);
if c.val != 0 { ret 5; }
c.add(10);
c.inc();
var r3: i32 = c.get();
c.add(&c, 10);
c.inc(&c);
var r3: i32 = c.get(&c);
if r3 != 11 { ret 6; }
ret 0;