fold-2 chunk C3 (drew's Fam8-13 plan): 8 alias value-row C drivers, 205 rows
re-homed with zero loss -- 177 value -> 8 test/lang/alias_*_test.ww @test
row-tables; 16 reject -> runww //ww:error carriers (both stages reject);
3 cs!=ww value rows -> 2 *_runonly_test.ww (T1, byte-id-excluded, #60/#81);
9 irreducible asymmetric rows -> slim C pins, each ticket-cited and
mutation-proven non-vacuous:
- accept amplen1/2,ampcap2: cs runs / ww rejects 'unsupported address-of
shape' (#96)
- cgen_b5 g73_heapfill: cs!=ww .s + ww link-fails on self-contained alloc;
compile-smoke pin (#24)
- cgen_b6 fsarg2_bound: both reject, different msgs, each vs the correct
stage (#271/#165 cs vs #272/#276/#277 ww)
- emit_b7 slc/slcstr/slctag _2lvl + slc_plain_ctl: slice-literal static-init
divergence (#120/#29-kin, ken-d2-oracle)
4 fully-migrated drivers deleted, 4 slimmed-in-place to hold only the
irreducible pins. LANGBYTEID floor 74->82 (8 new byte-id @test files); test
count 388->384 (4 deleted; 4 slimmed kept). do-not-auto-batch files not in
Fam10.
21 lines
866 B
Plaintext
21 lines
866 B
Plaintext
// alias_accept_runonly_test — the cs≠ww .s carve-out split from
|
|
// alias_accept_test (#5-C3, #7f/#254 value-only runonly home). A bare
|
|
// (anonymous-let) struct widened into a 2-level alias variant: the asm
|
|
// diverges on 3 pre-existing cglet zero-fill lines (cs XORQ+2 stores, ww none
|
|
// — task #81 class), runtime-correct on BOTH stages, ORTHOGONAL to the variant
|
|
// tag under test. The acceptance + correct-tag behavior stays pinned on the
|
|
// cstage run (T1); the file is *_runonly so the test-lang-byteid (T2) corpus
|
|
// excludes it. Flip back into alias_accept_test when the #81 zero-fill
|
|
// divergence closes. Migrated from test/wcc/944_alias_accept_run.c.
|
|
|
|
package alias_accept_runonly_test;
|
|
|
|
type sa = struct { a: i64, };
|
|
type sb = sa;
|
|
|
|
@test fn v2_struct2() void = {
|
|
let s: struct { a: i64, } = sa{a=7};
|
|
let v: (void | sb) = s;
|
|
assert(v is sb);
|
|
};
|