@scriptc/compiler 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ambient/scriptc-node-fallback.d.ts +104 -31
- package/ambient/scriptc.d.ts +2 -1
- package/dist/backend/build-cache.js.map +1 -1
- package/dist/backend/c/async.d.ts +5 -0
- package/dist/backend/c/async.js +81 -2
- package/dist/backend/c/async.js.map +1 -1
- package/dist/backend/c/c-emitter.d.ts +25 -10
- package/dist/backend/c/c-emitter.js +74 -22
- package/dist/backend/c/c-emitter.js.map +1 -1
- package/dist/backend/c/exprs.d.ts +8 -1
- package/dist/backend/c/exprs.js +371 -18
- package/dist/backend/c/exprs.js.map +1 -1
- package/dist/backend/c/island.js.map +1 -1
- package/dist/backend/c/may-throw.js.map +1 -1
- package/dist/backend/c/shapes.js +15 -13
- package/dist/backend/c/shapes.js.map +1 -1
- package/dist/backend/c/stmts.d.ts +3 -5
- package/dist/backend/c/stmts.js +58 -17
- package/dist/backend/c/stmts.js.map +1 -1
- package/dist/backend/c/types.d.ts +4 -0
- package/dist/backend/c/types.js +18 -1
- package/dist/backend/c/types.js.map +1 -1
- package/dist/backend/c/types.test.js +8 -1
- package/dist/backend/c/types.test.js.map +1 -1
- package/dist/backend/c/walkers.js +63 -16
- package/dist/backend/c/walkers.js.map +1 -1
- package/dist/backend/external-c.js.map +1 -1
- package/dist/backend/json-literal.d.ts +7 -0
- package/dist/backend/json-literal.js +17 -0
- package/dist/backend/json-literal.js.map +1 -0
- package/dist/backend/json-literal.test.d.ts +1 -0
- package/dist/backend/json-literal.test.js +17 -0
- package/dist/backend/json-literal.test.js.map +1 -0
- package/dist/backend/link-plan.d.ts +1 -1
- package/dist/backend/link-plan.js +5 -1
- package/dist/backend/link-plan.js.map +1 -1
- package/dist/backend/linker.js.map +1 -1
- package/dist/backend/llvm/blocks.js.map +1 -1
- package/dist/backend/llvm/classes.js +8 -7
- package/dist/backend/llvm/classes.js.map +1 -1
- package/dist/backend/llvm/common.d.ts +4 -0
- package/dist/backend/llvm/common.js +6 -0
- package/dist/backend/llvm/common.js.map +1 -1
- package/dist/backend/llvm/common.test.d.ts +1 -0
- package/dist/backend/llvm/common.test.js +9 -0
- package/dist/backend/llvm/common.test.js.map +1 -0
- package/dist/backend/llvm/dyn.d.ts +4 -0
- package/dist/backend/llvm/dyn.js +80 -16
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emitter.js +132 -25
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +85 -3
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-calls.js.map +1 -1
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-context.d.ts +5 -0
- package/dist/backend/llvm/expr-control.js.map +1 -1
- package/dist/backend/llvm/expr-dispatch.js.map +1 -1
- package/dist/backend/llvm/expr-dynamic.js +15 -3
- package/dist/backend/llvm/expr-dynamic.js.map +1 -1
- package/dist/backend/llvm/expr-island.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +8 -0
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-records.js +3 -3
- package/dist/backend/llvm/expr-records.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +222 -10
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/expr-stream-callbacks.d.ts +3 -0
- package/dist/backend/llvm/expr-stream-callbacks.js +53 -0
- package/dist/backend/llvm/expr-stream-callbacks.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +24 -0
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +50 -5
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +64 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/lib-stream.js +6 -3
- package/dist/backend/llvm/lib-stream.js.map +1 -1
- package/dist/backend/llvm/shapes.js +10 -8
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/split.js.map +1 -1
- package/dist/backend/llvm/unsupported.js.map +1 -1
- package/dist/backend/llvm/walkers.js +7 -5
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-codegen.js.map +1 -1
- package/dist/backend/native-codegen.test.js +2 -0
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/native-link-info.d.ts +2 -1
- package/dist/backend/native-link-info.js +4 -0
- package/dist/backend/native-link-info.js.map +1 -1
- package/dist/backend/native-link-info.test.js +24 -1
- package/dist/backend/native-link-info.test.js.map +1 -1
- package/dist/backend/native-toolchain.d.ts +8 -6
- package/dist/backend/native-toolchain.js +28 -13
- package/dist/backend/native-toolchain.js.map +1 -1
- package/dist/backend/native-toolchain.test.js +36 -1
- package/dist/backend/native-toolchain.test.js.map +1 -1
- package/dist/backend/runtime-pack-targets.test.js +1 -1
- package/dist/backend/runtime-pack-targets.test.js.map +1 -1
- package/dist/backend/runtime-pack.js.map +1 -1
- package/dist/backend/runtime-pack.test.js +1 -0
- package/dist/backend/runtime-pack.test.js.map +1 -1
- package/dist/backend/targets.d.ts +5 -0
- package/dist/backend/targets.js +9 -0
- package/dist/backend/targets.js.map +1 -1
- package/dist/backend/targets.test.js +6 -1
- package/dist/backend/targets.test.js.map +1 -1
- package/dist/backend/vendor-archives.js.map +1 -1
- package/dist/compat/fetch-profile.js +4 -2
- package/dist/compat/fetch-profile.js.map +1 -1
- package/dist/coverage/report.js.map +1 -1
- package/dist/coverage/surface-manifest.js +13 -0
- package/dist/coverage/surface-manifest.js.map +1 -1
- package/dist/diagnostics/diagnostic.d.ts +6 -5
- package/dist/diagnostics/diagnostic.js +10 -9
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/diagnostics/render.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +1 -0
- package/dist/executable/executable-cache.js +1 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +1 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/ffi/ffi-manifest.js.map +1 -1
- package/dist/frontend/cjs-lexer.js.map +1 -1
- package/dist/frontend/dts-paths.js.map +1 -1
- package/dist/frontend/input-tracker.d.ts +10 -0
- package/dist/frontend/input-tracker.js +26 -3
- package/dist/frontend/input-tracker.js.map +1 -1
- package/dist/frontend/input-tracker.test.js +8 -1
- package/dist/frontend/input-tracker.test.js.map +1 -1
- package/dist/frontend/lib-contract.js.map +1 -1
- package/dist/frontend/lowering/array-values.d.ts +4 -0
- package/dist/frontend/lowering/array-values.js +18 -2
- package/dist/frontend/lowering/array-values.js.map +1 -1
- package/dist/frontend/lowering/callback-arg.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +31 -0
- package/dist/frontend/lowering/containers/bytes.js +1105 -0
- package/dist/frontend/lowering/containers/bytes.js.map +1 -0
- package/dist/frontend/lowering/containers/string-and-regexp.d.ts +17 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js +345 -0
- package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.d.ts +13 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js +76 -0
- package/dist/frontend/lowering/expressions/evaluation-safety.js.map +1 -0
- package/dist/frontend/lowering/expressions/object-literals.d.ts +44 -0
- package/dist/frontend/lowering/expressions/object-literals.js +1815 -0
- package/dist/frontend/lowering/expressions/object-literals.js.map +1 -0
- package/dist/frontend/lowering/expressions/optional-chains.d.ts +31 -0
- package/dist/frontend/lowering/expressions/optional-chains.js +382 -0
- package/dist/frontend/lowering/expressions/optional-chains.js.map +1 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.d.ts +7 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js +26 -0
- package/dist/frontend/lowering/expressions/try-lower-expression.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.js +7 -2
- package/dist/frontend/lowering/lib-boundary.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +16 -10
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-async-iteration.d.ts +7 -0
- package/dist/frontend/lowering/lower-async-iteration.js +657 -0
- package/dist/frontend/lowering/lower-async-iteration.js.map +1 -0
- package/dist/frontend/lowering/lower-builtins.d.ts +40 -21
- package/dist/frontend/lowering/lower-builtins.js +611 -115
- package/dist/frontend/lowering/lower-builtins.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.d.ts +21 -10
- package/dist/frontend/lowering/lower-calls.js +516 -75
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.d.ts +7 -13
- package/dist/frontend/lowering/lower-classes.js +128 -35
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-comptime.js.map +1 -1
- package/dist/frontend/lowering/lower-containers.d.ts +1 -47
- package/dist/frontend/lowering/lower-containers.js +147 -1475
- package/dist/frontend/lowering/lower-containers.js.map +1 -1
- package/dist/frontend/lowering/lower-event-emitter.js +51 -5
- package/dist/frontend/lowering/lower-event-emitter.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.d.ts +0 -78
- package/dist/frontend/lowering/lower-exprs.js +503 -2353
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.d.ts +18 -3
- package/dist/frontend/lowering/lower-generators.js +145 -9
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.js +10 -3
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-island.d.ts +6 -0
- package/dist/frontend/lowering/lower-island.js +37 -5
- package/dist/frontend/lowering/lower-island.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +60 -15
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-node-module.d.ts +18 -0
- package/dist/frontend/lowering/lower-node-module.js +302 -0
- package/dist/frontend/lowering/lower-node-module.js.map +1 -0
- package/dist/frontend/lowering/lower-server.js +1 -1
- package/dist/frontend/lowering/lower-server.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.d.ts +10 -28
- package/dist/frontend/lowering/lower-stmts.js +542 -259
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lower-stream.js +4 -4
- package/dist/frontend/lowering/lower-stream.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +41 -38
- package/dist/frontend/lowering/lowerer.js +148 -62
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/optional-arguments.d.ts +9 -0
- package/dist/frontend/lowering/optional-arguments.js +57 -0
- package/dist/frontend/lowering/optional-arguments.js.map +1 -0
- package/dist/frontend/lowering/surfaces.d.ts +5 -3
- package/dist/frontend/lowering/surfaces.js +33 -13
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/npm-static-declarations.d.ts +35 -0
- package/dist/frontend/npm-static-declarations.js +519 -0
- package/dist/frontend/npm-static-declarations.js.map +1 -0
- package/dist/frontend/npm-static-declarations.test.d.ts +1 -0
- package/dist/frontend/npm-static-declarations.test.js +132 -0
- package/dist/frontend/npm-static-declarations.test.js.map +1 -0
- package/dist/frontend/npm-static.d.ts +2 -0
- package/dist/frontend/npm-static.js +26 -10
- package/dist/frontend/npm-static.js.map +1 -1
- package/dist/frontend/npm.d.ts +60 -0
- package/dist/frontend/npm.js +38 -4
- package/dist/frontend/npm.js.map +1 -1
- package/dist/frontend/npm.test.d.ts +1 -0
- package/dist/frontend/npm.test.js +50 -0
- package/dist/frontend/npm.test.js.map +1 -0
- package/dist/frontend/program.d.ts +3 -2
- package/dist/frontend/program.js +513 -70
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/resolve.d.ts +26 -3
- package/dist/frontend/resolve.js +166 -29
- package/dist/frontend/resolve.js.map +1 -1
- package/dist/frontend/resolve.test.js +24 -1
- package/dist/frontend/resolve.test.js.map +1 -1
- package/dist/frontend/runtime-resolve.d.ts +22 -0
- package/dist/frontend/runtime-resolve.js +101 -0
- package/dist/frontend/runtime-resolve.js.map +1 -0
- package/dist/frontend/runtime-resolve.test.d.ts +1 -0
- package/dist/frontend/runtime-resolve.test.js +18 -0
- package/dist/frontend/runtime-resolve.test.js.map +1 -0
- package/dist/frontend/ts7/adapter.js +12 -13
- package/dist/frontend/ts7/adapter.js.map +1 -1
- package/dist/frontend/ts7/ast.js.map +1 -1
- package/dist/frontend/ts7/census-check.js +3 -3
- package/dist/frontend/ts7/census-check.js.map +1 -1
- package/dist/frontend/ts7/checker.d.ts +3 -0
- package/dist/frontend/ts7/checker.js +12 -3
- package/dist/frontend/ts7/checker.js.map +1 -1
- package/dist/frontend/ts7/enums.js.map +1 -1
- package/dist/frontend/ts7/program-adapter.js +42 -3
- package/dist/frontend/ts7/program-adapter.js.map +1 -1
- package/dist/frontend/type-mapper.js +171 -16
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.js +11 -5
- package/dist/index.js.map +1 -1
- package/dist/ir/analysis.js +1 -0
- package/dist/ir/analysis.js.map +1 -1
- package/dist/ir/ir.d.ts +125 -52
- package/dist/ir/ir.js +136 -7
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/serialize.d.ts +1 -1
- package/dist/ir/serialize.js +1 -1
- package/dist/ir/validate.js +120 -63
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/cache-primitives.js.map +1 -1
- package/dist/library/cache-reset.test.js.map +1 -1
- package/dist/library/compiler-self-identity.js.map +1 -1
- package/dist/library/int-infer.js.map +1 -1
- package/dist/library/int-infer.test.js +4 -4
- package/dist/library/int-infer.test.js.map +1 -1
- package/dist/library/library-cache.d.ts +1 -0
- package/dist/library/library-cache.js +1 -0
- package/dist/library/library-cache.js.map +1 -1
- package/dist/library/library-cache.test.js +18 -5
- package/dist/library/library-cache.test.js.map +1 -1
- package/dist/library/library-profile.js.map +1 -1
- package/dist/library/sidecar-validate.js.map +1 -1
- package/dist/library/sidecar.js.map +1 -1
- package/dist/startup-cache.js.map +1 -1
- package/dist/wasi-paths.js.map +1 -1
- package/package.json +18 -18
- package/surface-manifest.json +91 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"island.js","sourceRoot":"","sources":["../../../src/backend/c/island.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"island.js","sourceRoot":"","sources":["../../../src/backend/c/island.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"may-throw.js","sourceRoot":"","sources":["../../../src/backend/c/may-throw.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"may-throw.js","sourceRoot":"","sources":["../../../src/backend/c/may-throw.ts"],"names":[],"mappings":"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"}
|
package/dist/backend/c/shapes.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InternalCompilerError } from "../../errors.js";
|
|
2
2
|
import { RUNTIME_EMITTER_CLASS, RUNTIME_ERROR_CLASSES, RUNTIME_STREAM_CLASSES, isRefCounted, mapOf, STRING } from "../../ir/ir.js";
|
|
3
3
|
import { mangleClassGcFree, mangleClassNew, mangleClassRelease, mangleClassReleaseDirect, mangleClassRetain, mangleClassStruct, mangleClassTrace, mangleCtorThunk, mangleField, mangleFunction, mangleRecordClone, mangleRecordGcFree, mangleRecordNew, mangleRecordRelease, mangleRecordRetain, mangleRecordStruct, mangleRecordTrace, mangleVtAdapter, mangleVtInstance, mangleVtStruct } from "../mangle.js";
|
|
4
|
-
import { boxKindC, cDecl, cType, elemKindC, mapValKindC, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
4
|
+
import { boxKindC, cCommentText, cDecl, cType, elemKindC, mapValKindC, releaseCallC, retainCallC, vAdapters } from "./types.js";
|
|
5
5
|
import { streamRooted } from "../../ir/analysis.js";
|
|
6
6
|
/** The overflow map's C member name on index-signature record structs.
|
|
7
7
|
* User fields mangle to `sc_fld_*`, so no field can collide. */
|
|
@@ -91,11 +91,11 @@ export function emitStructDefs(emitter, out) {
|
|
|
91
91
|
return `scr_map_new(SCR_MAP_KEY_STR, SCR_MAP_VAL_REF, &${rc.retain}, &${rc.release}, ${emitter.traceArgC(v)})`;
|
|
92
92
|
};
|
|
93
93
|
for (const s of shapes) {
|
|
94
|
-
out.push(`typedef struct ${s.struct} ${s.struct}; /* ${s.comment} */`);
|
|
94
|
+
out.push(`typedef struct ${s.struct} ${s.struct}; /* ${cCommentText(s.comment)} */`);
|
|
95
95
|
}
|
|
96
96
|
out.push("");
|
|
97
97
|
for (const s of shapes) {
|
|
98
|
-
out.push(`struct ${s.struct} { /* ${s.comment} */`, ` size_t rc;`);
|
|
98
|
+
out.push(`struct ${s.struct} { /* ${cCommentText(s.comment)} */`, ` size_t rc;`);
|
|
99
99
|
if (inHierarchy(s)) {
|
|
100
100
|
// The hierarchy prefix: base fields follow at identical offsets in
|
|
101
101
|
// every subclass, so vt must sit between rc and the field list.
|
|
@@ -116,7 +116,7 @@ export function emitStructDefs(emitter, out) {
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
for (const f of s.fields) {
|
|
119
|
-
out.push(` ${cDecl(f.type, mangleField(f.name))}; /* ${f.name} */`);
|
|
119
|
+
out.push(` ${cDecl(f.type, mangleField(f.name))}; /* ${cCommentText(f.name)} */`);
|
|
120
120
|
}
|
|
121
121
|
if (s.indexValue) {
|
|
122
122
|
out.push(` ScrMap *${OVERFLOW_MEMBER}; /* [key: string] overflow (string-keyed) */`);
|
|
@@ -178,12 +178,12 @@ export function emitStructDefs(emitter, out) {
|
|
|
178
178
|
}
|
|
179
179
|
out.push(` scr_obj_free_note();`, ` scr_cyc_free(o);`, ` } else {`, ` scr_cyc_on_release(o); /* possible cycle root; may collect */`, ` }`, `}`, `static ${s.struct} *${s.newFn}(void) {`, ` ${s.struct} *o = scr_cyc_alloc(sizeof *o, &${s.trace}, &${s.gcFree});`, ` o->rc = 1;`, ...undefFieldInitC(s), ...(s.indexValue ? [` o->${OVERFLOW_MEMBER} = ${overflowNewC(s)};`] : []), ` scr_obj_alloc_note();`, ` return o;`, `}`, ...(s.recordId !== undefined && emitter.recordCloneShapes.has(s.recordId)
|
|
180
180
|
? emitRecordCloneC(s.recordId, s.struct, s.fields, s.newFn)
|
|
181
|
-
: []), `static void ${s.trace}(void *o0, ScrTraceVisit visit, void *ctx) {`, ` ${s.struct} *o = (${s.struct} *)o0;`, ...tracedFields.map((m) => ` visit(o->${m.member}, ctx); /* ${m.name} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0
|
|
181
|
+
: []), `static void ${s.trace}(void *o0, ScrTraceVisit visit, void *ctx) {`, ` ${s.struct} *o = (${s.struct} *)o0;`, ...tracedFields.map((m) => ` visit(o->${m.member}, ctx); /* ${cCommentText(m.name)} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0
|
|
182
182
|
? [
|
|
183
183
|
` ${s.struct} *o = (${s.struct} *)o0;`,
|
|
184
184
|
...untracedRefFields.map((m) => {
|
|
185
185
|
const field = `o->${m.member}`;
|
|
186
|
-
return ` if (${field}) ${releaseCallC(m.type, field)}; /* ${m.name} (acyclic) */`;
|
|
186
|
+
return ` if (${field}) ${releaseCallC(m.type, field)}; /* ${cCommentText(m.name)} (acyclic) */`;
|
|
187
187
|
}),
|
|
188
188
|
]
|
|
189
189
|
: []), ` scr_obj_free_note();`, ` scr_cyc_free(o0);`, `}`, `static void *${s.retain}_v(void *o) { return ${s.retain}((${s.struct} *)o); }`, `static void ${s.release}_v(void *o) { ${s.release}((${s.struct} *)o); }`, ``);
|
|
@@ -257,7 +257,7 @@ export function emitVtableDecls(emitter, out, hierarchyClasses) {
|
|
|
257
257
|
out.push(` ScrVt head;`);
|
|
258
258
|
for (const slot of root.slots) {
|
|
259
259
|
const ret = cType(slot.fn.returnType).trim();
|
|
260
|
-
out.push(` ${ret} (*${slot.member})(${emitter.vtSlotParams(slot, false).join(", ")}); /* ${slot.method} */`);
|
|
260
|
+
out.push(` ${ret} (*${slot.member})(${emitter.vtSlotParams(slot, false).join(", ")}); /* ${cCommentText(slot.method)} */`);
|
|
261
261
|
}
|
|
262
262
|
out.push(`} ${vtt};`);
|
|
263
263
|
}
|
|
@@ -285,8 +285,8 @@ export function emitVtableInstances(emitter, out, hierarchyClasses) {
|
|
|
285
285
|
const vtt = mangleVtStruct(meta.root.def.name);
|
|
286
286
|
const head = `{ ${meta.pre}, ${meta.post}, &${mangleClassReleaseDirect(meta.def.name)} }`;
|
|
287
287
|
const entries = emitter.vtEntriesFor(meta).map(({ slot, impl }) => impl === null
|
|
288
|
-
? `0 /* ${slot.method}: outside the declaring subtree */`
|
|
289
|
-
: `&${mangleVtAdapter(impl.def.name, slot.method)} /* ${slot.method} */`);
|
|
288
|
+
? `0 /* ${cCommentText(slot.method)}: outside the declaring subtree */`
|
|
289
|
+
: `&${mangleVtAdapter(impl.def.name, slot.method)} /* ${cCommentText(slot.method)} */`);
|
|
290
290
|
out.push(`static const ${vtt} ${mangleVtInstance(meta.def.name)} = { /* class ${meta.def.name} */`, ` ${[head, ...entries].join(",\n ")}`, `};`);
|
|
291
291
|
}
|
|
292
292
|
if (hierarchyClasses.length > 0)
|
|
@@ -355,7 +355,7 @@ export function emitHierarchyClassHelpers(emitter, out, meta, s) {
|
|
|
355
355
|
? [` scr_emitter_reg_trace(o->sc_eereg, visit, ctx); /* listener closures */`]
|
|
356
356
|
: []), ...(isStreamRooted
|
|
357
357
|
? [` scr_stream_st_trace(o->sc_st, visit, ctx); /* stream state closures/pipes */`]
|
|
358
|
-
: []), ...tracedFields.map((f) => ` visit(o->${mangleField(f.name)}, ctx); /* ${f.name} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0 || emitterRooted
|
|
358
|
+
: []), ...tracedFields.map((f) => ` visit(o->${mangleField(f.name)}, ctx); /* ${cCommentText(f.name)} */`), `}`, `static void ${s.gcFree}(void *o0) {`, ...(untracedRefFields.length > 0 || emitterRooted
|
|
359
359
|
? [` ${s.struct} *o = (${s.struct} *)o0;`]
|
|
360
360
|
: []), ...(emitterRooted
|
|
361
361
|
? [` scr_emitter_reg_gcfree(o->sc_eereg); /* EventEmitter prefix */`]
|
|
@@ -363,7 +363,7 @@ export function emitHierarchyClassHelpers(emitter, out, meta, s) {
|
|
|
363
363
|
? [` scr_stream_st_gcfree(o->sc_st); /* stream state (ScrStream prefix) */`]
|
|
364
364
|
: []), ...untracedRefFields.map((f) => {
|
|
365
365
|
const field = `o->${mangleField(f.name)}`;
|
|
366
|
-
return ` if (${field}) ${releaseCallC(f.type, field)}; /* ${f.name} (acyclic) */`;
|
|
366
|
+
return ` if (${field}) ${releaseCallC(f.type, field)}; /* ${cCommentText(f.name)} (acyclic) */`;
|
|
367
367
|
}), ` scr_obj_free_note();`, ` scr_cyc_free(o0);`, `}`);
|
|
368
368
|
}
|
|
369
369
|
out.push(`static void *${s.retain}_v(void *o) { return ${s.retain}((${s.struct} *)o); }`, `static void ${s.release}_v(void *o) { ${s.release}((${s.struct} *)o); }`, ``);
|
|
@@ -543,6 +543,7 @@ export function arrNewC(emitter, elem, capExpr) {
|
|
|
543
543
|
elem.kind === "child" || // spawned child handles: scr_child_* adapters, no trace
|
|
544
544
|
elem.kind === "netServer" || // server handles: scr_net_server_* adapters, no trace
|
|
545
545
|
elem.kind === "symbol" || // symbol identities: scr_sym_* adapters, no trace
|
|
546
|
+
elem.kind === "bigint" || // immutable numeric values: scr_bigint_* adapters
|
|
546
547
|
elem.kind === "classval" || // class objects: no-op adapters, no trace (immortal statics)
|
|
547
548
|
// Closures: scr_closure_* adapters + scr_closure_trace_v (always
|
|
548
549
|
// cycle-headered — captures can reach back through boxes).
|
|
@@ -570,7 +571,7 @@ export function boxNewC(emitter, t) {
|
|
|
570
571
|
t.kind === "map" || t.kind === "set" || t.kind === "promise" ||
|
|
571
572
|
t.kind === "generator" ||
|
|
572
573
|
t.kind === "regex" || t.kind === "url" || t.kind === "searchParams" ||
|
|
573
|
-
t.kind === "symbol" || t.kind === "stats" ||
|
|
574
|
+
t.kind === "symbol" || t.kind === "bigint" || t.kind === "stats" ||
|
|
574
575
|
t.kind === "fileHandle" ||
|
|
575
576
|
t.kind === "spawnRes" || t.kind === "child" || t.kind === "bytes" ||
|
|
576
577
|
t.kind === "netServer" || t.kind === "netSocket" ||
|
|
@@ -578,7 +579,8 @@ export function boxNewC(emitter, t) {
|
|
|
578
579
|
t.kind === "dgramSocket" || t.kind === "testCtx" ||
|
|
579
580
|
t.kind === "httpReq" || t.kind === "httpRes" ||
|
|
580
581
|
t.kind === "httpClientReq" || t.kind === "secureCtx" ||
|
|
581
|
-
t.kind === "
|
|
582
|
+
t.kind === "cryptoHash" || t.kind === "cryptoHmac" ||
|
|
583
|
+
t.kind === "fsWatcher" || t.kind === "childStream" || t.kind === "childWriter" ||
|
|
582
584
|
// Island handles: the box carries scr_jsval_retain_v/release_v and
|
|
583
585
|
// no trace — the same stance as jsval array elements.
|
|
584
586
|
t.kind === "jsval" ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shapes.js","sourceRoot":"","sources":["../../../src/backend/c/shapes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shapes.js","sourceRoot":"","sources":["../../../src/backend/c/shapes.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,11 +35,9 @@ export declare function emitStmt(emitter: CEmitter, s: IrStmt): void;
|
|
|
35
35
|
* handler or dummy return). A `return` inside the try/catch body rides a
|
|
36
36
|
* THIRD finally copy (sc_finret_N — the pending-return path: value
|
|
37
37
|
* snapshotted into sc_pret at the return site, dispatch outward after
|
|
38
|
-
* the copy runs)
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* must model; jumps out of PLAIN try/catch need nothing here —
|
|
42
|
-
* release-on-jump already walks the try scopes. */
|
|
38
|
+
* the copy runs). Break/continue inline the crossed finally bodies via
|
|
39
|
+
* emitFinallysForJump before branching to their resolved targets; jumps
|
|
40
|
+
* out of plain try/catch need nothing beyond release-on-jump. */
|
|
43
41
|
export declare function emitTryCatch(emitter: CEmitter, s: IrStmt & {
|
|
44
42
|
kind: "tryCatch";
|
|
45
43
|
}): void;
|
package/dist/backend/c/stmts.js
CHANGED
|
@@ -13,6 +13,7 @@ export function emitFunction(emitter, fn) {
|
|
|
13
13
|
emitter.jumpTargets = [];
|
|
14
14
|
emitter.tryStack = [];
|
|
15
15
|
emitter.finallyStack = [];
|
|
16
|
+
emitter.pendingReturnScopeIndex = null;
|
|
16
17
|
emitter.currentReturnType = fn.returnType;
|
|
17
18
|
emitter.currentGenerator = fn.generator ?? null;
|
|
18
19
|
emitter.labelCounter = 0;
|
|
@@ -575,6 +576,7 @@ export function emitStmt(emitter, s) {
|
|
|
575
576
|
labels: s.labels,
|
|
576
577
|
scopeDepth: emitter.scopes.length,
|
|
577
578
|
frameDepth: emitter.frames.length,
|
|
579
|
+
finallyDepth: emitter.finallyStack.length,
|
|
578
580
|
};
|
|
579
581
|
emitter.jumpTargets.push(target);
|
|
580
582
|
emitter.emitBlock(s.body);
|
|
@@ -603,7 +605,7 @@ export function emitStmt(emitter, s) {
|
|
|
603
605
|
}
|
|
604
606
|
if (!target)
|
|
605
607
|
throw new InternalCompilerError("emitter bug: break target not found");
|
|
606
|
-
emitter.
|
|
608
|
+
emitter.emitFinallysForJump(target.finallyDepth, target.frameDepth, target.scopeDepth);
|
|
607
609
|
if (target.kind !== "loop" || s.label !== undefined) {
|
|
608
610
|
// Switches are emitted as goto chains and blocks aren't C loops
|
|
609
611
|
// at all, so a C `break` cannot target either; and a LABELED
|
|
@@ -632,7 +634,7 @@ export function emitStmt(emitter, s) {
|
|
|
632
634
|
}
|
|
633
635
|
if (!loop)
|
|
634
636
|
throw new InternalCompilerError("emitter bug: continue target not found");
|
|
635
|
-
emitter.
|
|
637
|
+
emitter.emitFinallysForJump(loop.finallyDepth, loop.frameDepth, loop.scopeDepth);
|
|
636
638
|
if (loop.continueLabel) {
|
|
637
639
|
// Labeled loops always allocate one (a labeled continue may
|
|
638
640
|
// target an outer loop a C continue could never reach); for/
|
|
@@ -646,6 +648,23 @@ export function emitStmt(emitter, s) {
|
|
|
646
648
|
break;
|
|
647
649
|
}
|
|
648
650
|
case "return": {
|
|
651
|
+
// A return inside the pending-return copy of a finally REPLACES the
|
|
652
|
+
// old return. Keep the old slot protected while the new expression
|
|
653
|
+
// evaluates (a throw there still discards it), then release the old
|
|
654
|
+
// value and remove the slot from this return's own unwind path.
|
|
655
|
+
let pendingEntry = null;
|
|
656
|
+
let value = null;
|
|
657
|
+
if (s.value)
|
|
658
|
+
value = emitter.emitExpr(s.value);
|
|
659
|
+
const pendingIndex = emitter.pendingReturnScopeIndex;
|
|
660
|
+
if (pendingIndex !== null && isRefCounted(emitter.currentReturnType)) {
|
|
661
|
+
const scope = emitter.scopes[pendingIndex];
|
|
662
|
+
const entryIndex = scope.findIndex((entry) => entry.name === "sc_pret");
|
|
663
|
+
if (entryIndex < 0)
|
|
664
|
+
throw new InternalCompilerError("emitter bug: pending return scope has no sc_pret");
|
|
665
|
+
pendingEntry = { index: pendingIndex, entry: scope.splice(entryIndex, 1)[0] };
|
|
666
|
+
emitter.releaseValue("sc_pret", emitter.currentReturnType);
|
|
667
|
+
}
|
|
649
668
|
const fin = emitter.finallyStack[emitter.finallyStack.length - 1];
|
|
650
669
|
if (fin) {
|
|
651
670
|
// Crossing ≥1 finally: the value is computed and snapshotted
|
|
@@ -653,28 +672,28 @@ export function emitStmt(emitter, s) {
|
|
|
653
672
|
// it — Node's semantics), then everything down to the innermost
|
|
654
673
|
// region releases and control runs that region's pending-return
|
|
655
674
|
// finally copy; its tail dispatches further out or returns.
|
|
656
|
-
if (
|
|
657
|
-
|
|
658
|
-
emitter.
|
|
659
|
-
emitter.line(`sc_pret = ${v.name};${emitter.srcComment(s.loc)}`);
|
|
675
|
+
if (value) {
|
|
676
|
+
emitter.moveTemp(value); // ownership parks in the slot until the dispatch returns it
|
|
677
|
+
emitter.line(`sc_pret = ${value.name};${emitter.srcComment(s.loc)}`);
|
|
660
678
|
}
|
|
661
679
|
fin.used = true;
|
|
662
680
|
emitter.releaseForJump(fin.frameDepth, fin.scopeDepth);
|
|
663
681
|
emitter.line(`goto ${fin.label};${s.value ? "" : emitter.srcComment(s.loc)}`);
|
|
664
|
-
break;
|
|
665
682
|
}
|
|
666
|
-
if (
|
|
667
|
-
|
|
668
|
-
emitter.moveTemp(v);
|
|
683
|
+
else if (value) {
|
|
684
|
+
emitter.moveTemp(value);
|
|
669
685
|
// Everything down to function depth releases; the moved result is
|
|
670
686
|
// exempt (already struck from its frame).
|
|
671
687
|
emitter.releaseForJump(0, 0);
|
|
672
|
-
emitter.line(`return ${
|
|
688
|
+
emitter.line(`return ${value.name};${emitter.srcComment(s.loc)}`);
|
|
673
689
|
}
|
|
674
690
|
else {
|
|
675
691
|
emitter.releaseForJump(0, 0);
|
|
676
692
|
emitter.line(`return;${emitter.srcComment(s.loc)}`);
|
|
677
693
|
}
|
|
694
|
+
if (pendingEntry !== null) {
|
|
695
|
+
emitter.scopes[pendingEntry.index].push(pendingEntry.entry);
|
|
696
|
+
}
|
|
678
697
|
break;
|
|
679
698
|
}
|
|
680
699
|
case "throw": {
|
|
@@ -766,11 +785,9 @@ export function emitStmt(emitter, s) {
|
|
|
766
785
|
* handler or dummy return). A `return` inside the try/catch body rides a
|
|
767
786
|
* THIRD finally copy (sc_finret_N — the pending-return path: value
|
|
768
787
|
* snapshotted into sc_pret at the return site, dispatch outward after
|
|
769
|
-
* the copy runs)
|
|
770
|
-
*
|
|
771
|
-
*
|
|
772
|
-
* must model; jumps out of PLAIN try/catch need nothing here —
|
|
773
|
-
* release-on-jump already walks the try scopes. */
|
|
788
|
+
* the copy runs). Break/continue inline the crossed finally bodies via
|
|
789
|
+
* emitFinallysForJump before branching to their resolved targets; jumps
|
|
790
|
+
* out of plain try/catch need nothing beyond release-on-jump. */
|
|
774
791
|
export function emitTryCatch(emitter, s) {
|
|
775
792
|
const id = emitter.labelCounter++;
|
|
776
793
|
const hasCatch = s.catchBody !== null;
|
|
@@ -796,6 +813,8 @@ export function emitTryCatch(emitter, s) {
|
|
|
796
813
|
used: false,
|
|
797
814
|
frameDepth: emitter.frames.length,
|
|
798
815
|
scopeDepth: emitter.scopes.length,
|
|
816
|
+
tryDepth: emitter.tryStack.length,
|
|
817
|
+
body: s.finallyBody,
|
|
799
818
|
}
|
|
800
819
|
: null;
|
|
801
820
|
emitter.line(`/* try */${emitter.srcComment(s.loc)}`);
|
|
@@ -880,11 +899,28 @@ export function emitTryCatch(emitter, s) {
|
|
|
880
899
|
emitter.line(`${finExcLabel}:; /* finally (exception path — stashed) */`);
|
|
881
900
|
emitter.line(`ScrCaught *${stash} = scr_exc_take();`);
|
|
882
901
|
emitter.scopes.push([{ name: stash, type: CAUGHT }]);
|
|
902
|
+
const suppressHandler = s.suppressFinallyErrors
|
|
903
|
+
? {
|
|
904
|
+
label: `sc_fsup_${id}`,
|
|
905
|
+
used: false,
|
|
906
|
+
frameDepth: emitter.frames.length,
|
|
907
|
+
scopeDepth: emitter.scopes.length,
|
|
908
|
+
}
|
|
909
|
+
: null;
|
|
910
|
+
if (suppressHandler)
|
|
911
|
+
emitter.tryStack.push(suppressHandler);
|
|
883
912
|
emitter.emitBlock(s.finallyBody);
|
|
913
|
+
if (suppressHandler)
|
|
914
|
+
emitter.tryStack.pop();
|
|
884
915
|
emitter.scopes.pop(); // normal completion keeps the stash for the re-raise
|
|
885
916
|
emitter.line(`scr_rethrow(${stash});`);
|
|
886
917
|
emitter.line(`scr_caught_release(${stash});`);
|
|
887
918
|
emitter.emitUnwind();
|
|
919
|
+
if (suppressHandler?.used) {
|
|
920
|
+
emitter.line(`${suppressHandler.label}:; /* disposal error suppresses body error */`);
|
|
921
|
+
emitter.line(`scr_exc_suppress(${stash}); /* consumes stash */`);
|
|
922
|
+
emitter.emitUnwind();
|
|
923
|
+
}
|
|
888
924
|
}
|
|
889
925
|
if (retEntry.used) {
|
|
890
926
|
// Pending-return path: a return in the try/catch body parked its
|
|
@@ -898,11 +934,15 @@ export function emitTryCatch(emitter, s) {
|
|
|
898
934
|
emitter.line(`${retEntry.label}:; /* finally (pending-return path) */`);
|
|
899
935
|
const retT = emitter.currentReturnType;
|
|
900
936
|
const own = isRefCounted(retT);
|
|
901
|
-
|
|
937
|
+
const previousPendingScope = emitter.pendingReturnScopeIndex;
|
|
938
|
+
if (own) {
|
|
902
939
|
emitter.scopes.push([{ name: "sc_pret", type: retT }]);
|
|
940
|
+
emitter.pendingReturnScopeIndex = emitter.scopes.length - 1;
|
|
941
|
+
}
|
|
903
942
|
emitter.emitBlock(s.finallyBody);
|
|
904
943
|
if (own)
|
|
905
944
|
emitter.scopes.pop();
|
|
945
|
+
emitter.pendingReturnScopeIndex = previousPendingScope;
|
|
906
946
|
const outer = emitter.finallyStack[emitter.finallyStack.length - 1];
|
|
907
947
|
if (outer) {
|
|
908
948
|
outer.used = true;
|
|
@@ -990,6 +1030,7 @@ export function emitSwitch(emitter, s) {
|
|
|
990
1030
|
...(s.labels !== undefined && { labels: s.labels }),
|
|
991
1031
|
scopeDepth: emitter.scopes.length,
|
|
992
1032
|
frameDepth: emitter.frames.length,
|
|
1033
|
+
finallyDepth: emitter.finallyStack.length,
|
|
993
1034
|
};
|
|
994
1035
|
emitter.jumpTargets.push(target);
|
|
995
1036
|
emitter.scopes.push([]);
|