The r-prefixed waves absorb the runtime, reject, and byte-compare rows of the migrated native carriers; each fixture is one directory with one case.ww and a //ww:error, //ww:compile, //ww:run, or //ww:run-exit directive covering both frontends.
17 lines
585 B
Plaintext
17 lines
585 B
Plaintext
//ww:error "sret-class tagged call result as a >48B by-value arg unwired"
|
|
package main;
|
|
type t_lit = rune;
|
|
type t_any = void;
|
|
type t_rep = struct { id: size, origin: size, m0: size, m1: size, m2: size, m3: size };
|
|
type t_u = (t_lit | t_any | t_rep);
|
|
fn probe(a: t_u) i32 = {
|
|
match (a) {
|
|
case let l: t_lit => { if (l == 'x') { return 1; }; return 91; };
|
|
case t_any => return 2;
|
|
case let r: t_rep => { if (r.m3 != 1234) { return 92; }; return 3; };
|
|
};
|
|
return 99;
|
|
};
|
|
fn mk() t_u = { return ('x': t_lit); };
|
|
export fn main() i32 = { if (probe(mk()) != 1) { return 1; }; return 0; };
|