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
6 changes: 5 additions & 1 deletion docs/content/limitations/builtin-function-values.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,11 @@ Native calls accept standard process streams; custom native streams and mutation
In JavaScript, a constructor function can inherit from `EventEmitter`, the legacy `Stream` constructor, or a stream class through `util.inherits` or `Object.setPrototypeOf`.
`EventEmitter.call(this)` and `Stream.call(this)` initialize the object as Node does, and its listener methods keep their state in the object's own `_events`, `_eventsCount`, and `_maxListeners` properties.
The `captureRejections` option and `events.errorMonitor` listeners are not supported on such objects.
Calling `Readable`, `Writable`, `Duplex`, `Transform`, or `PassThrough` with a constructor function's receiver throws `SC2020` where the call runs.
`Readable.call(this, options)` and the same call on `Writable`, `Duplex`, `Transform`, or `PassThrough` give the object a native stream.
The stream calls the object's `_read`, `_write`, `_final`, `_transform`, `_flush`, and `_destroy` with the object as `this`, and the stream prototypes' methods and accessors work on it.
Its listeners live in the native stream rather than in `_events`, and `_readableState` and `_writableState` are read-only views that answer the commonly read fields.
Typed code that receives such an object as a stream class uses its native stream, and piping a native stream into it works.
The options the native streams refuse (`objectMode`, `decodeStrings: false`, `signal`, and others) are refused here too, as are `_writev`, `_construct`, symbol event names, `listeners()`, `rawListeners()`, `wrap()`, strings written in encodings other than UTF-8, and pipes into a destination that overrides `write()` or `end()`.
Other class constructors passed to `util.inherits` or `util.deprecate` are refused.
Deprecation warnings are emitted on the next tick and follow assignments to `process.noDeprecation` and `process.throwDeprecation`; compiled binaries take no Node command-line flags such as `--no-deprecation` or `--trace-deprecation`, and `process.traceDeprecation` is unsupported.
A stored `util.deprecate` reports a `length` of 4, where Node reports 3.
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 @@ -33,6 +33,7 @@ export function executableLinkFeatures(mod: IrModule): NativeLinkFeatures {
searchParams: features.searchParams,
qs: features.qs,
dynBuiltinClass: features.dynBuiltinClass,
dynBuiltinStream: features.dynBuiltinStream,
parseArgs: features.parseArgs,
stream: features.stream,
net: features.net,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/library-pack.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ export async function compilePackedLibrary(
searchParams: options.searchParams ?? false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
33 changes: 33 additions & 0 deletions packages/compiler/src/backend/llvm/dyn.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,8 @@ export interface DynHost extends WalkerHost {
/** The shared adapter record: live array capsules read its `arrayOps`, so a
* narrower return type would hand the native compiler a copy without it. */
liveDynRefAdapter(t: IrType): LlStreamTypedRefAdapter;
/** See moduleUsesDynBuiltinStream. */
usesDynBuiltinStream?(): boolean;
liveDynUnionRefAdapter(t: IrType & { kind: "union" }): string;
dynPromiseAdapter(t: IrType): string;
isErrorClass(className: string): boolean;
Expand All @@ -140,6 +142,19 @@ export interface DynHost extends WalkerHost {

const FN_ATTRS = "#0";

/** scr_dyn_builtin_stream_check's kind for a runtime stream class (the
* numbering of scr_dyn_builtin_class.c), or null. */
function builtinStreamKind(className: string): number | null {
const kinds: Record<string, number> = {
"%Readable": 2,
"%Writable": 3,
"%Duplex": 4,
"%Transform": 5,
"%PassThrough": 6,
};
return kinds[className] ?? null;
}

export class LlDyn {
private readonly dynMatchers = new Map<string, string>();
private readonly dynBuilders = new Map<string, string>();
Expand Down Expand Up @@ -1491,6 +1506,24 @@ export class LlDyn {
B.line(`${ref} = call ptr @scr_dyn_typed_ref_unbox(ptr %d)`);
B.terminate(`ret ptr ${ref}`);
B.startBlock(lNext);
// A constructor-function stream (scr_dyn_builtin_stream.c) carries
// its runtime stream.
const streamKind = t.kind === "object" ? builtinStreamKind(t.className) : null;
if (streamKind !== null && this.host.usesDynBuiltinStream?.() === true) {
host.declare(`declare ptr @scr_dyn_builtin_stream_check(ptr, double)`);
const own = B.tmp(),
hit = B.tmp();
B.line(
`${own} = call ptr @scr_dyn_builtin_stream_check(ptr %d, double ${f64Lit(streamKind)})`,
);
B.line(`${hit} = icmp ne ptr ${own}, null`);
const lOwn = B.newLabel("dc.ctor"),
lNotOwn = B.newLabel("dc.notctor");
B.condBr(hit, lOwn, lNotOwn);
B.startBlock(lOwn);
B.terminate(`ret ptr ${own}`);
B.startBlock(lNotOwn);
}
if (t.kind !== "union" && preserveRefs) {
const kind = this.kindOf(B, "%d");
const capsule = B.tmp();
Expand Down
12 changes: 11 additions & 1 deletion packages/compiler/src/backend/llvm/emitter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,11 @@ import {
VOID,
classJsName,
} from "../../ir/ir.js";
import { moduleRuntimeFeatures, moduleUsesMockTimers } from "../../ir/runtime-features.js";
import {
moduleRuntimeFeatures,
moduleUsesDynBuiltinStream,
moduleUsesMockTimers,
} from "../../ir/runtime-features.js";
import { captureFreeFunctions, observesStacks } from "../stack-observations.js";
import { type DenseArrayLoop } from "./dense-array-loops.js";
import { findInitializedByteLoopBindings } from "./byte-windows.js";
Expand Down Expand Up @@ -902,6 +906,11 @@ export class LlEmitter {
/** Identity-preserving static→dyn capsules for program classes and Web
* APIs whose values remain directly observable. */
readonly liveDynRefAdapters = new Map<string, LlStreamTypedRefAdapter>();
private dynBuiltinStreamUse: boolean | undefined;
/** See moduleUsesDynBuiltinStream. */
get usesDynBuiltinStream(): boolean {
return (this.dynBuiltinStreamUse ??= moduleUsesDynBuiltinStream(this.mod));
}
/** Runtime-arm dispatchers for live union values. */
readonly liveDynUnionRefAdapters = new Map<string, string>();
readonly dynPromiseAdapters = new Map<string, string>();
Expand Down Expand Up @@ -1405,6 +1414,7 @@ export class LlEmitter {
fieldAbsentTestIn: (B, value, unionId) => this.fieldAbsentTestIn(B, value, unionId),
absentInstanceRef: (unionId) => this.absentInstanceRef(unionId),
liveDynRefAdapter: (type) => this.liveDynRefAdapter(type),
usesDynBuiltinStream: () => this.usesDynBuiltinStream,
liveDynUnionRefAdapter: (type) => this.liveDynUnionRefAdapter(type),
dynPromiseAdapter: (type) => this.dynPromiseAdapter(type),
isErrorClass: (name) => this.classMeta.get(name)?.root.def.name === "%Error",
Expand Down
9 changes: 7 additions & 2 deletions packages/compiler/src/backend/llvm/expr-stream-bridges.ts
Original file line number Diff line number Diff line change
Expand Up @@ -766,8 +766,13 @@ export function streamTypedRefMaterializeAdapter(
!meta.def.instancePrototypeHelper &&
!meta.def.prototypeDataHelper
) {
host.declare(`declare ptr @scr_stream_dyn_view(ptr)`);
B.line(`${out} = call ptr @scr_stream_dyn_view(ptr %p)`);
// Programs with constructor-function streams view them through
// scr_dyn_builtin_stream.c, which answers their own objects.
const view = host.usesDynBuiltinStream
? "scr_dyn_builtin_stream_view"
: "scr_stream_dyn_view";
host.declare(`declare ptr @${view}(ptr)`);
B.line(`${out} = call ptr @${view}(ptr %p)`);
} else B.line(`${out} = call ptr @scr_dyn_new_obj()`);
const withAttributes = meta.def.fields.some((field) => field.name === CLASS_ATTRIBUTES);
if (meta.def.tracksOwnFields) {
Expand Down
7 changes: 6 additions & 1 deletion packages/compiler/src/backend/llvm/lib-dispatch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -548,7 +548,12 @@ export function emitGenericLibCall(host: LlvmEmitterContext, e: LibCallExpr): Ll
mockTimerSym(host, e) ??
(e.fn === "timers.queueMicrotaskDyn" && host.schedulesInContext
? "scr_queue_microtask_dyn_als"
: LIB_FN_SYMS[e.fn]);
: // Programs with constructor-function streams unbox untyped pipe
// destinations and pipeline stages through scr_dyn_builtin_stream.c,
// which also takes those streams.
e.fn === "stream.unboxDyn" && host.usesDynBuiltinStream
? "scr_dyn_builtin_stream_unbox"
: LIB_FN_SYMS[e.fn]);
if (sym === undefined) throw new LlvmUnsupportedError(`libCall:${e.fn}`, e.loc);
const args = READ_ONLY_STRING_LIB_FNS.has(e.fn)
? emitBorrowedInputs(host, e.args)
Expand Down
3 changes: 3 additions & 0 deletions packages/compiler/src/backend/llvm/lib-shared.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1438,6 +1438,7 @@ export const LIB_FN_SYMS: Record<string, string> = {
"dyn.classBasePrototype": "scr_dyn_class_base_prototype",
"dyn.classInherit": "scr_dyn_class_inherit",
"dyn.builtinClass": "scr_dyn_builtin_class",
"dyn.builtinStreamClass": "scr_dyn_builtin_stream_class",
"dyn.builtinInstanceOf": "scr_dyn_builtin_instanceof",
"dyn.functionInstanceOf": "scr_dyn_function_instanceof",
"dyn.classSuper": "scr_dyn_class_super",
Expand Down Expand Up @@ -1516,6 +1517,8 @@ export function mockTimerSym(

export const USES_TIMERS_LIB_FNS = new Set<string>([
"process.emitWarning",
// Constructor-function streams defer their events on the stream ticks.
"dyn.builtinStreamClass",
// Decipheriv.setAuthTag reports DEP0182 on the next tick.
"crypto.cipherNew",
// WebCrypto results settle through the deferred crypto queue.
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/native-link-info-core.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ export interface NativeLinkFeatures {
searchParams: boolean;
qs: boolean;
dynBuiltinClass: boolean;
dynBuiltinStream: boolean;
parseArgs: boolean;
stream: boolean;
net: boolean;
Expand Down
4 changes: 4 additions & 0 deletions packages/compiler/src/backend/native/contracts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,10 @@ export interface CcOptions {
* scr_dyn_builtin_class.c, which also references the inspection,
* dyn-invoke and symbol units. */
dynBuiltinClass?: boolean;
/** The program uses a stream class as an untyped constructor value:
* compiles scr_dyn_builtin_stream.c, the constructors' stream half, which
* also references the stream unit. */
dynBuiltinStream?: boolean;
/** The program uses native util parsing, comparison, or styling. Optional
* utility units also require their symbol, inspection, and warning features. */
parseArgs?: boolean;
Expand Down
10 changes: 10 additions & 0 deletions packages/compiler/src/backend/native/executable.ts
Original file line number Diff line number Diff line change
Expand Up @@ -245,6 +245,16 @@
(u.opts.emitter || u.opts.workers),
"scr_dyn_builtin_class.c",
),
unit(
(u) =>
u.opts.dynBuiltinStream &&
u.opts.dynBuiltinClass &&
u.opts.stream &&
u.opts.inspect &&
u.opts.dynInvoke &&
u.opts.symbol,
"scr_dyn_builtin_stream.c",
),
unit((u) => u.opts.stream, "scr_stream.c", "scr_fs_stream.c"),
// The zlib stream classes reference both the zlib engine and the
// stream unit.
Expand Down Expand Up @@ -784,7 +794,7 @@
}
};
const buildExecutable = async (
runtimeInput: (path: string) => string,

Check failure on line 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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_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: __builtin_longjmp is not supported for the current target\n 378 |

Check failure on line 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 programs, sanitized, shard 4/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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 programs, sanitized, shard 4/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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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_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: __builtin_longjmp is not supported for th

Check failure on line 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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 797 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 (571 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:797:13 ❯ buildExecutable packages/compiler/src/backend/native/executable.ts:809:7 ❯ runUncachedBuild packages/compiler/src/backend/native/executable.ts:846:7 ❯ compileCInternal packages/compiler/src/backend/native/executable.ts:938:5 ❯ compileC packages/compiler/src/backend/native/executable.ts:1597: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:1267: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
build: { programPath?: string; outPath?: string; compilerVisibleSource?: string } = {},
): Promise<void> => {
if (!separateSanitizedProgram) {
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/runtime-pack-targets.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ const features = {
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/runtime-pack.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ const BASE: NativeLinkFeatures = {
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/backend/warm-cache.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ export async function warmNativeCaches(
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/executable/executable-cache.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ const native: EarlyExecutableNativeFeatures = {
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
2 changes: 2 additions & 0 deletions packages/compiler/src/executable/executable-cache.ts
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ export interface EarlyExecutableNativeFeatures {
searchParams: boolean;
qs: boolean;
dynBuiltinClass: boolean;
dynBuiltinStream: boolean;
parseArgs: boolean;
stream: boolean;
net: boolean;
Expand Down Expand Up @@ -192,6 +193,7 @@ const BOOLEAN_NATIVE_KEYS = [
"searchParams",
"qs",
"dynBuiltinClass",
"dynBuiltinStream",
"parseArgs",
"stream",
"net",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,8 +111,18 @@ export function builtinClassDynValueOf(lowerer: Lowerer, node: ts.Expression): I
};
}

/** EventEmitter and the legacy Stream are dyn.builtinClass; the stream
* classes, which carry native stream state for constructor functions, are
* dyn.builtinStreamClass, so only programs that use them link the stream
* half. */
export function builtinClassValue(kind: number, loc: SrcLoc): IrExpr {
return { kind: "libCall", fn: "dyn.builtinClass", args: [numLit(kind, loc)], type: DYN, loc };
return {
kind: "libCall",
fn: kind <= 1 ? "dyn.builtinClass" : "dyn.builtinStreamClass",
args: [numLit(kind, loc)],
type: DYN,
loc,
};
}

/** `Base.call(this, …)` / `Base.apply(this, args)` on one of those class
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,7 @@ async function compileExecutableNative(
searchParams: features.searchParams,
qs: features.qs,
dynBuiltinClass: features.dynBuiltinClass,
dynBuiltinStream: features.dynBuiltinStream,
parseArgs: features.parseArgs,
stream: features.stream,
net: features.net,
Expand Down
4 changes: 4 additions & 0 deletions packages/compiler/src/ir/builtin-signatures.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3540,6 +3540,10 @@ export const LIB_FN_SIGS = defineLibFnSignatures({
* Transform (5) and PassThrough (6) as untyped constructor values, one
* per thread (scr_dyn_builtin_class.c). */
"dyn.builtinClass": { argTypes: [F64], result: DYN },
/** The stream classes (2-6 above) with their stream half: constructor
* functions over them get native stream state
* (scr_dyn_builtin_stream.c). */
"dyn.builtinStreamClass": { argTypes: [F64], result: DYN },
/** `value instanceof C` for those constructors, over the value's
* prototype chain. */
"dyn.builtinInstanceOf": { argTypes: [DYN, F64], result: BOOL },
Expand Down
17 changes: 16 additions & 1 deletion packages/compiler/src/ir/runtime-features.ts
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,8 @@ const CHILD_PROCESS_LIB_PREFIXES: readonly string[] = ["child.", "cp.", "spawnRe
* emitter unit, so each of them links all five. */
const BUILTIN_CLASS_LIB_FNS: readonly IrLibFn[] = [
"dyn.builtinClass",
// the stream classes, through scr_dyn_builtin_stream.c
"dyn.builtinStreamClass",
"dyn.builtinInstanceOf",
"dyn.functionInstanceOf",
];
Expand Down Expand Up @@ -539,6 +541,10 @@ const RUNTIME_FEATURE_RULES = {
dynBuiltinClass: rule({
fns: [...BUILTIN_CLASS_LIB_FNS],
}),
/** The stream classes as untyped constructor values with their stream
* half (scr_dyn_builtin_stream.c): native stream state for constructor
* functions, over the stream unit. */
dynBuiltinStream: rule({ fns: ["dyn.builtinStreamClass"] }),
dynInvoke: rule({
initial: (mod) => mod.workers === true,
fns: [...DYN_INVOKE_LIB_FNS, ...UTIL_CALLABLE_LIB_FNS, ...BUILTIN_CLASS_LIB_FNS],
Expand Down Expand Up @@ -660,7 +666,7 @@ const RUNTIME_FEATURE_RULES = {
}),
stream: rule({
initial: (mod) => (mod.classes ?? []).some((c) => RUNTIME_STREAM_CLASSES.has(c.name)),
fns: [...STREAM_LIB_FNS],
fns: [...STREAM_LIB_FNS, "dyn.builtinStreamClass"],
prefixes: STREAM_LIB_PREFIXES,
}),
/** A Dirent row converted to dyn carries Node's Symbol(type) key
Expand Down Expand Up @@ -705,6 +711,7 @@ function noRuntimeFeatures(): RuntimeFeatures {
dnsPromises: false,
dynAsync: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
dynInvoke: false,
dynTier: false,
emitter: false,
Expand Down Expand Up @@ -869,6 +876,14 @@ export function moduleUsesStream(mod: IrModule): boolean {
return scanRuntimeFeatures(mod, "stream").stream;
}

/** True when the program links scr_dyn_builtin_stream.c (stream classes
* as untyped constructor values): its runtime streams box through that
* unit's view and checked casts to the stream classes accept constructor-
* function streams. Programs without it keep their exact code. */
export function moduleUsesDynBuiltinStream(mod: IrModule): boolean {
return scanRuntimeFeatures(mod, "dynBuiltinStream").dynBuiltinStream;
}

export const NPM_COMPRESS_MIN = 1024;

export function moduleUsesZlib(mod: IrModule): boolean {
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/native/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ async function main(): Promise<number> {
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/native/prepare.ts
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ function validFeatures(value: unknown): value is NativeLinkFeatures {
"searchParams",
"qs",
"dynBuiltinClass",
"dynBuiltinStream",
"parseArgs",
"stream",
"net",
Expand Down
1 change: 1 addition & 0 deletions packages/compiler/src/native/sanitizer.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ test.skipIf(process.platform !== "linux" && process.platform !== "darwin")(
searchParams: false,
qs: false,
dynBuiltinClass: false,
dynBuiltinStream: false,
parseArgs: false,
stream: false,
net: false,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"order": [
"<repo>/tests/corpus/6560-constructor-function-readable.cjs"
],
"diags": []
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"order": [
"<repo>/tests/corpus/6561-constructor-function-writable.cjs"
],
"diags": []
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"order": [
"<repo>/tests/corpus/6562-constructor-function-transform.cjs"
],
"diags": []
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"order": [
"<repo>/tests/corpus/6563-constructor-function-stream-errors.cjs"
],
"diags": []
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"order": [
"<repo>/tests/corpus/6564-constructor-function-stream-late-hooks.cjs"
],
"diags": []
}
Loading
Loading