19 lines
533 B
Plaintext
19 lines
533 B
Plaintext
//ww:run-exit 42
|
|
// migrated from test/wcc/784_xmod_alias_struct_collide_run.c: #223 trigger — sa's *vtable alias peel must not halt on sb's same-leaf foreign struct.
|
|
package main;
|
|
import sa;
|
|
import sb;
|
|
fn cb(x: sa.s, v: i32) i32 = { return v + 100; };
|
|
export fn main() i32 = {
|
|
let bait: sb.s;
|
|
let vt = sa.mkvt((&cb): *sa.reader);
|
|
let st: sa.s = &vt;
|
|
let r = sa.read(st, 5);
|
|
let vt2 = sa.mkempty();
|
|
let st2: sa.s = &vt2;
|
|
let r2 = sa.read(st2, 5);
|
|
if (r != 105) { return 11; };
|
|
if (r2 != -1) { return 12; };
|
|
return 42;
|
|
};
|