Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/content/limitations/builtin-apis/eventemitter.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
- **EventEmitter:** Literal event names use fixed argument tuples.
Computed string names require a constant prefix or suffix that excludes `error`, meta events, and stream-internal events; their arguments must match the exact arity and support checked conversion.
Unrestricted names, symbols, names that may reach internal events, and typed `listeners()`/`rawListeners()` results for names with possible computed registrations are unsupported.
`events.once` accepts EventEmitter and stream instances with a literal event name and an optional object-literal `{ signal }`; a stream's `data` event, other options values, and EventTarget emitters are unsupported.
Reading `defaultMaxListeners` through a CommonJS destructured or member binding (`const { defaultMaxListeners } = require("events")`) is unsupported.
2 changes: 1 addition & 1 deletion packages/compiler/ambient/scriptc-node-fallback.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6569,7 +6569,7 @@ declare module "events" {
export { internal as EventEmitter };
// The event's arguments, as checked-dynamic values.
export function once(
emitter: EventEmitter,
emitter: EventEmitter | NodeJS.ReadableStream | NodeJS.WritableStream,
eventName: string,
options?: { signal?: AbortSignal },
): Promise<unknown[]>;
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/executable-features.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ export function executableLinkFeatures(mod: IrModule): NativeLinkFeatures {
dynAsync: features.dynAsync,
...(features.dynTier ? { dynTier: true } : {}),
...(features.streamDyn ? { streamDyn: true } : {}),
...(features.eventsOnceSignal ? { eventsOnceSignal: true } : {}),
events: features.processEvents,
emitter: features.emitter,
symbol: features.symbol,
Expand Down
7 changes: 5 additions & 2 deletions packages/compiler/src/backend/llvm/emitter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5599,8 +5599,11 @@ export class LlEmitter {
return emitterFixedAdapter(this, cbT);
}

emitterOnceAdapter(boxerT: IrType & { kind: "func" }): { fn: string; shim: string } {
return emitterOnceAdapter(this, boxerT);
emitterOnceAdapter(
boxerT: IrType & { kind: "func" },
fire?: string,
): { fn: string; shim: string } {
return emitterOnceAdapter(this, boxerT, fire);
}

wrapEmitterListener(target: string, adapterFn: string): string {
Expand Down
12 changes: 8 additions & 4 deletions packages/compiler/src/backend/llvm/expr-callbacks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -864,23 +864,27 @@ export function emitterFixedAdapter(
* (the event's tuple to any[]): the runtime-built listener closure holds
* the boxer in caps[0], so the adapter calls it with the event's typed
* arguments, as emitterFixedAdapter calls a listener, and hands the array
* to scr_events_once_fire. */
* to scr_events_once_fire (or `fire`, the signal form's entry). */
export function emitterOnceAdapter(
host: LlvmEmitterContext,
boxerT: IrType & { kind: "func" },
fire = "scr_events_once_fire",
): { fn: string; shim: string } {
const cursor = boxerT.params.length > 4;
const shim = cursor ? "scr_ee_inv_args" : `scr_ee_inv_fixed${boxerT.params.length}`;
if (cursor) host.declare("declare ptr @scr_ee_arg_next(ptr)");
host.declare(`declare void @${shim}(ptr, ptr)`);
const key = `eeOnce:${typeKey(boxerT)}`;
const key =
fire === "scr_events_once_fire"
? `eeOnce:${typeKey(boxerT)}`
: `eeOnce:${fire}:${typeKey(boxerT)}`;
let sym = host.resolveThunks.get(key);
if (sym) return { fn: sym, shim };
sym = `sc_ee_once_${host.resolveThunks.size}`;
host.resolveThunks.set(key, sym);
host.declare(`declare ptr @scr_box_get_ref(ptr)`);
host.declare(`declare void @scr_closure_release(ptr)`);
host.declare(`declare void @scr_events_once_fire(ptr, ptr)`);
host.declare(`declare void @${fire}(ptr, ptr)`);
const params = cursor ? "ptr %args" : boxerT.params.map((_, i) => `ptr %a${i}`).join(", ");
const d: string[] = [
`define internal void @${sym}(ptr %cb${params ? ", " + params : ""}) ${FN_ATTRS} { ; events.once adapter ${typeKey(boxerT)}`,
Expand Down Expand Up @@ -911,7 +915,7 @@ export function emitterOnceAdapter(
` %fn = load ptr, ptr %fnp`,
` %arr = call ptr %fn(${passed.join(", ")}) ; the boxed arguments, +1`,
` call void @scr_closure_release(ptr %boxer)`,
` call void @scr_events_once_fire(ptr %cb, ptr %arr) ; moves %arr`,
` call void @${fire}(ptr %cb, ptr %arr) ; moves %arr`,
` ret void`,
`}`,
``,
Expand Down
3 changes: 2 additions & 1 deletion packages/compiler/src/backend/llvm/lib-dispatch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -755,7 +755,8 @@ export function emitLibCall(host: LlvmEmitterContext, e: LibCallExpr): LlValue {
}
const prefix = e.fn.slice(0, e.fn.indexOf(".")) as LibCallPrefix;
// events.once builds typed listener adapters beside the emitter calls.
if (e.fn === "events.once") return host.emitErrorsEventsLibCall(e);
if (e.fn === "events.once" || e.fn === "events.onceSignal")
return host.emitErrorsEventsLibCall(e);
switch (prefix) {
case "fetch":
case "abort":
Expand Down
31 changes: 19 additions & 12 deletions packages/compiler/src/backend/llvm/lib-process.ts
Original file line number Diff line number Diff line change
Expand Up @@ -731,27 +731,34 @@ export function emitErrorsEventsLibCall(host: LlvmEmitterContext, e: LibCallExpr
host.emitAlwaysPendingUnwind();
return out;
}
if (e.fn === "events.once") {
// (recv, name, boxer, errorBoxer, listenForError): scr_events_once
// registers one-shot typed listeners behind adapters that box the
// event's tuple (and the 'error' tuple) into the fulfilled array. The
// runtime retains the boxers; the frame's temporaries release as usual.
// May-throw ('newListener' meta listeners run inside).
if (e.fn === "events.once" || e.fn === "events.onceSignal") {
// (recv, name, boxer, errorBoxer, listenForError[, signal]):
// scr_events_once registers one-shot typed listeners behind adapters
// that box the event's tuple (and the 'error' tuple) into the fulfilled
// array. The runtime retains the boxers; the frame's temporaries
// release as usual. May-throw ('newListener' meta listeners run
// inside). The signal form's adapters end in its own fire entry.
const boxerT = e.args[2]!.type;
const errorT = e.args[3]!.type;
if (boxerT.kind !== "func" || errorT.kind !== "func")
throw new InternalCompilerError("llvm emitter bug: events.once boxer not a func");
throw new InternalCompilerError(`llvm emitter bug: ${e.fn} boxer not a func`);
const signal = e.fn === "events.onceSignal";
const args = e.args.map((a) => host.emitExpr(a));
const event = host.emitterOnceAdapter(boxerT);
const error = host.emitterOnceAdapter(errorT);
host.declare(`declare ptr @scr_events_once(ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr)`);
const fire = signal ? "scr_events_once_signal_fire" : undefined;
const event = host.emitterOnceAdapter(boxerT, fire);
const error = host.emitterOnceAdapter(errorT, fire);
const entry = signal ? "scr_events_once_signal" : "scr_events_once";
host.declare(
`declare ptr @${entry}(ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr${signal ? ", ptr" : ""})`,
);
const errorBoxer = B.tmp();
B.line(`${errorBoxer} = select i1 ${args[4]!.name}, ptr ${args[3]!.name}, ptr null`);
const t = B.tmp();
B.line(
`${t} = call ptr @scr_events_once(ptr ${args[0]!.name}, ptr ${args[1]!.name}, ` +
`${t} = call ptr @${entry}(ptr ${args[0]!.name}, ptr ${args[1]!.name}, ` +
`ptr ${args[2]!.name}, ptr @${event.fn}, ptr @${event.shim}, ` +
`ptr ${errorBoxer}, ptr @${error.fn}, ptr @${error.shim})`,
`ptr ${errorBoxer}, ptr @${error.fn}, ptr @${error.shim}` +
`${signal ? `, ptr ${args[5]!.name}` : ""})`,
);
const out = host.own({ name: t, type: e.type });
host.emitPendingCheck();
Expand Down
3 changes: 3 additions & 0 deletions packages/compiler/src/backend/native-link-info-core.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ export interface NativeLinkFeatures {
/** Checked-dynamic stream slots: the scr_stream_dyn.c unit. Absent (not
* false) for programs without them. */
streamDyn?: boolean;
/** events.once with options: scr_events_once_signal.c. Absent (not
* false) for programs without it. */
eventsOnceSignal?: boolean;
events: boolean;
emitter: boolean;
symbol: boolean;
Expand Down
3 changes: 3 additions & 0 deletions packages/compiler/src/backend/native/contracts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,9 @@ export interface CcOptions {
/** Checked-dynamic stream slots (stream.dynNative / stream.pipeDyn):
* compiles scr_stream_dyn.c. */
streamDyn?: boolean;
/** events.once with options (events.onceSignal): compiles
* scr_events_once_signal.c. */
eventsOnceSignal?: boolean;
/** The program constructs EventTarget/Event/CustomEvent values or
* calls events.addAbortListener (the event.* libCalls), or uses the
* native fetch AbortSignal built on the same engine: compiles
Expand Down
3 changes: 3 additions & 0 deletions packages/compiler/src/backend/native/executable.ts
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,9 @@
// measures with.
unit((u) => u.opts.events && u.regex, "scr_readline_tty.c"),
unit((u) => u.opts.emitter || u.opts.workers, "scr_events_emitter.c"),
// events.once with options registers through the emitter and
// event-target units.
unit((u) => u.opts.eventsOnceSignal === true, "scr_events_once_signal.c"),
// The checked-dynamic HANDLE support unit (listener gate + runtime
// adapter closures): every referencing unit is one of the emitter or
// net families (http implies net), so handle-free binaries keep
Expand Down Expand Up @@ -781,7 +784,7 @@
? "This build includes native FFI link inputs. Check that every symbol and system library exists, " +
"that archive/object ordering is correct, and that each input matches the selected target."
: `Check the supplied native source and the selected ${ccName} toolchain.`;
throw new CcCompileError(

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (568 programs, sanitized, shard 2/6) > webassembly-spec-imports/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/b9af185bdec1bbe6/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (568 programs, sanitized, shard 2/6) > webassembly-spec-imports/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/b9af185bdec1bbe6/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (568 programs, sanitized, shard 2/6) > webassembly-spec-control/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/77dcfb65abbf1545/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (568 programs, sanitized, shard 2/6) > webassembly-spec-control/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/77dcfb65abbf1545/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-wpt-jsapi.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/af8194c5d4c28c7e/webassembly-wpt-jsapi.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(buf)

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-wpt-jsapi.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/af8194c5d4c28c7e/webassembly-wpt-jsapi.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(buf)

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-spec-memory/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/ab5b0deeb79f95c0/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-spec-memory/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/ab5b0deeb79f95c0/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-feature-probe.js

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/19f79eafe38b43c3/webassembly-feature-probe.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(b

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 1/3)

tests/harness/differential.test.ts > differential corpus (567 programs, sanitized, shard 1/6) > webassembly-feature-probe.js

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/19f79eafe38b43c3/webassembly-feature-probe.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(b

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 2/3)

tests/harness/differential.test.ts > differential corpus (569 programs, sanitized, shard 3/6) > webassembly-lifetimes.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/112e5f0bc76ae0ac/webassembly-lifetimes.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 2/3)

tests/harness/differential.test.ts > differential corpus (569 programs, sanitized, shard 3/6) > webassembly-lifetimes.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/112e5f0bc76ae0ac/webassembly-lifetimes.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 2/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 4/6) > webassembly-worker.ts

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/7aa4949d4bbe6334/webassembly-worker.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(buf) __b

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 2/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 4/6) > webassembly-worker.ts

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/7aa4949d4bbe6334/webassembly-worker.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target\n 378 | SCR_WASM_LONGJMP(top->jmp);\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro \'SCR_WASM_LONGJMP\'\n 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1)\n | ^~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target\n 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) {\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro \'SCR_WASM_SETJMP\'\n 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf)\n | ^~~~

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-table/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/8e7753362bab64f4/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-table/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/8e7753362bab64f4/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-int/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/e5e8710de304963d/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-int/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/e5e8710de304963d/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-float/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/3db33f708a9e006b/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-spec-float/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/3db33f708a9e006b/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __built

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-externref-lifetimes.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/5847c795e48fe041/webassembly-externref-lifetimes.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_w

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-externref-lifetimes.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/5847c795e48fe041/webassembly-externref-lifetimes.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value \'SCR_DYN_PROXY\' not handled in switch [-Wswitch]\n 1394 | switch (d->kind) {\n | ^~~~~~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases\n 1394 | switch (d->kind) {\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_w

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-dylink/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/c911cb31af91f9b9/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 630 | switch (a->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: note: add missing switch cases 630 | switch (a->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: warning: enumeration val

Check failure on line 787 in packages/compiler/src/backend/native/executable.ts

View workflow job for this annotation

GitHub Actions / test (macOS, san, darwin 3/3)

tests/harness/differential.test.ts > differential corpus (570 programs, sanitized, shard 5/6) > webassembly-dylink/main.mjs

CcCompileError: clang failed compiling /Users/runner/work/scriptc/scriptc/node_modules/.cache/scriptc-tests/c911cb31af91f9b9/main.ll. Check the supplied native source and the selected clang toolchain. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing 'const ScrStr *' (aka 'const struct ScrStr *') to parameter of type 'ScrStr *' (aka 'struct ScrStr *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] 2220 | double index = scr_string_to_number(key); | ^~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter 's' here 255 | double scr_string_to_number(ScrStr *s); | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 630 | switch (a->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: note: add missing switch cases 630 | switch (a->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: warning: enumeration value 'SCR_DYN_PROXY' not handled in switch [-Wswitch] 1394 | switch (d->kind) { | ^~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_inspect.c:1394:11: note: add missing switch cases 1394 | switch (d->kind) { | ^ 1 warning generated. /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:378:3: error: __builtin_longjmp is not supported for the current target 378 | SCR_WASM_LONGJMP(top->jmp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:315:31: note: expanded from macro 'SCR_WASM_LONGJMP' 315 | #define SCR_WASM_LONGJMP(buf) __builtin_longjmp(buf, 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:419:7: error: __builtin_setjmp is not supported for the current target 419 | if (SCR_WASM_SETJMP(entry.jmp) == 0) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_wasm.c:314:30: note: expanded from macro 'SCR_WASM_SETJMP' 314 | #define SCR_WASM_SETJMP(buf) __builtin_setjmp(buf) | ^~~~~~~~~~~~~~~~~~~~~ 2 errors generated. ❯ runClang packages/compiler/src/backend/native/executable.ts:787:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:799:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:836:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:928:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1587:3 ❯ compileExternalC packages/compiler/src/backend/external-c.ts:43:3 ❯ compileExecutableNative packages/compiler/src/index.ts:518:3 ❯ compileTracked packages/compiler/src/index.ts:1266:5 ❯ compile packages/compiler/src/index.ts:413:18 ❯ compileAndRun tests/harness/differential.test.ts:383:18 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { driver: 'clang', stderr: '/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_json.c:2220:39: warning: passing \'const ScrStr *\' (aka \'const struct ScrStr *\') to parameter of type \'ScrStr *\' (aka \'struct ScrStr *\') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]\n 2220 | double index = scr_string_to_number(key);\n | ^~~\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_string_methods.h:255:37: note: passing argument to parameter \'s\' here\n 255 | double scr_string_to_number(ScrStr *s);\n | ^\n1 warning generated.\n/Users/runner/work/scriptc/scriptc/packages/runtime/src/scr_assert.c:630:11: warning: enumeration val
ccName,
stderr,
`${ccName} failed compiling ${opts.cPath}.\n` + `${guidance}\n\n${stderr}`,
Expand Down
2 changes: 2 additions & 0 deletions packages/compiler/src/backend/runtime-pack-core.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ export interface RuntimeFeatureSet extends NativeLinkFeatures {
wasm: boolean;
dynTier: boolean;
streamDyn: boolean;
eventsOnceSignal: boolean;
warningReplace: boolean;
stdioExtended: boolean;
nativeFetch: boolean;
Expand Down Expand Up @@ -277,6 +278,7 @@ export function effectiveRuntimeFeatures(
wasm: features.wasm === true,
dynTier: features.dynTier === true,
streamDyn: features.streamDyn === true,
eventsOnceSignal: features.eventsOnceSignal === true,
warningReplace: features.warningReplace === true,
stdioExtended: features.stdioExtended === true,
nativeFetch,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/executable/executable-cache.ts
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ export interface EarlyExecutableNativeFeatures {
dynAsync: boolean;
dynTier?: boolean;
streamDyn?: boolean;
eventsOnceSignal?: boolean;
events: boolean;
emitter: boolean;
symbol: boolean;
Expand Down
72 changes: 51 additions & 21 deletions packages/compiler/src/frontend/lowering/builtins/promises.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,11 @@ function lowerTuplePromiseAll(
* type is the checker's combined promise, and each entry's inner type
* must be that inner type, one of its union arms, or a sub-union of it
* (the backend's interned adapters wrap/re-tag fulfillments; a wider
* entry would need machinery that doesn't exist and fences).
* entry would need machinery that doesn't exist and fences). A
* Promise<never> entry fits any result, and an entry whose payload widens
* into the result's converts. When the checker's combined type has no
* representation, the result takes the type the entries that can fulfill
* share, or 'unknown'.
* Promise.all/allSettled/any fence with the sequential-await hint;
* resolve/reject and the rest fall to the member fence. Null for
* non-Promise receivers. */
Expand All @@ -214,14 +218,47 @@ export function lowerPromiseStaticCall(
"a non-empty array LITERAL of promises is the supported form: Promise.race([p, q])",
);
}
const resultT = lowerer.mapTypeOf(lowerer.typeOf(call));
if (resultT?.kind !== "promise") {
lowerer.noLowering(
"Promise.race with this combined result type",
call,
"the entries' value types must combine into a representable union",
);
// A Promise<never> entry (the deadline idiom: `new Promise<never>((_,
// reject) => setTimeout(reject, ms))`) can only reject, so it races
// under any result type; its inner type maps to void.
const neverEntry = (el: ts.Expression): boolean => {
const t = lowerer.typeOf(el);
const arg =
t.getSymbol()?.name === "Promise"
? lowerer.checker.getTypeArguments(t as ts.TypeReference)[0]
: undefined;
return arg !== undefined && (arg.flags & ts.TypeFlags.Never) !== 0;
};
const elements = argNode.elements.nodes;
let combined = lowerer.mapTypeOf(lowerer.typeOf(call));
let lowered: IrExpr[] | null = null;
if (combined?.kind !== "promise") {
// The checker's combined type has no representation (an 'any'
// element array such as events.once's any[], or 'void | any[]'): the
// result takes the one type the entries that can fulfill share, or
// else 'unknown' when each of them widens into it.
lowered = elements.map((el) => lowerer.lowerExpr(el));
const fulfilling = lowered.filter((_, i) => !neverEntry(elements[i]!));
const first = fulfilling[0]?.type;
const dynResult: IrType & { kind: "promise" } = { kind: "promise", inner: DYN };
if (first?.kind === "promise" && fulfilling.every((e) => typeEquals(e.type, first))) {
combined = first;
} else if (
fulfilling.length > 0 &&
fulfilling.every(
(e) => e.type.kind === "promise" && lowerer.promisePayloadWidens(e.type, dynResult),
)
) {
combined = dynResult;
} else {
lowerer.noLowering(
"Promise.race with this combined result type",
call,
"the entries' value types must combine into a representable union",
);
}
}
const resultT = combined;
const resultArms =
resultT.inner.kind === "union"
? (lowerer.unions.get(resultT.inner.unionId)?.arms ?? [])
Expand All @@ -238,19 +275,8 @@ export function lowerPromiseStaticCall(
}
return resultArms.some((a) => typeEquals(a, inner));
};
// A Promise<never> entry (the deadline idiom: `new Promise<never>((_,
// reject) => setTimeout(reject, ms))`) can only reject, so it races
// under any result type; its inner type maps to void.
const neverEntry = (el: ts.Expression): boolean => {
const t = lowerer.typeOf(el);
const arg =
t.getSymbol()?.name === "Promise"
? lowerer.checker.getTypeArguments(t as ts.TypeReference)[0]
: undefined;
return arg !== undefined && (arg.flags & ts.TypeFlags.Never) !== 0;
};
const entries = argNode.elements.nodes.map((el) => {
const entry = lowerer.lowerExpr(el);
const entries = elements.map((el, i) => {
const entry = lowered?.[i] ?? lowerer.lowerExpr(el);
if (entry.type.kind !== "promise") {
lowerer.noLowering(
"Promise.race over non-promise entries",
Expand All @@ -259,6 +285,10 @@ export function lowerPromiseStaticCall(
);
}
if (!compatible(entry.type.inner) && !(entry.type.inner.kind === "void" && neverEntry(el))) {
// A payload that widens into the result's (into 'unknown', or a
// checked conversion) keeps its promise and settlement turn.
if (lowerer.promisePayloadWidens(entry.type, resultT))
return lowerer.coerceToExpected(entry, resultT);
lowerer.unsupported(
"SC1090",
el,
Expand Down
19 changes: 19 additions & 0 deletions packages/compiler/src/frontend/lowering/lower-classes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ import {
import {
STREAM_API_MEMBERS,
STREAM_PROP_MEMBERS,
STREAM_COMPLETION_CALLBACK_INDEX,
UNDERSCORE_METHODS,
lowerStreamNew,
lowerStreamSuperCall,
Expand Down Expand Up @@ -2698,6 +2699,24 @@ export function collectClassShapeInner(
);
}
}
// A completion callback declared with the broad `Function` type
// (`cb: Function`) takes the checked-dynamic callable the runtime
// passes implicitly typed callbacks; calls through it are
// dynamic calls of that callable.
const callbackIndex = STREAM_COMPLETION_CALLBACK_INDEX.get(name);
const callbackParam =
ts.isMethodDeclaration(member) && callbackIndex !== undefined
? member.parameters.nodes[callbackIndex]
: undefined;
if (
callbackParam !== undefined &&
ts.isIdentifier(callbackParam.name) &&
!callbackParam.dotDotDotToken &&
!callbackParam.questionToken &&
!callbackParam.initializer &&
lowerer.checker.typeToString(lowerer.typeOf(callbackParam.name)) === "Function"
)
lowerer.checkedCallbackParams.add(callbackParam);
}
}
if (ts.isPropertyDeclaration(member)) {
Expand Down
Loading
Loading