@scriptc/compiler 0.4.3 → 0.4.4
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 +73 -29
- package/dist/backend/llvm/bytes-loop-versions.js +6 -0
- package/dist/backend/llvm/bytes-loop-versions.js.map +1 -1
- package/dist/backend/llvm/bytes-loop-versions.test.js +7 -2
- package/dist/backend/llvm/bytes-loop-versions.test.js.map +1 -1
- package/dist/backend/llvm/debug-info.js +2 -5
- package/dist/backend/llvm/debug-info.js.map +1 -1
- package/dist/backend/llvm/dyn.d.ts +4 -0
- package/dist/backend/llvm/dyn.js +21 -9
- package/dist/backend/llvm/dyn.js.map +1 -1
- package/dist/backend/llvm/emit-function.js +2 -8
- package/dist/backend/llvm/emit-function.js.map +1 -1
- package/dist/backend/llvm/emit-module.js +16 -6
- package/dist/backend/llvm/emit-module.js.map +1 -1
- package/dist/backend/llvm/emitter.d.ts +10 -0
- package/dist/backend/llvm/emitter.js +9 -5
- package/dist/backend/llvm/emitter.js.map +1 -1
- package/dist/backend/llvm/emitter.test.js +11 -2
- package/dist/backend/llvm/emitter.test.js.map +1 -1
- package/dist/backend/llvm/expr-async.js +11 -13
- package/dist/backend/llvm/expr-async.js.map +1 -1
- package/dist/backend/llvm/expr-bytes.js +14 -8
- package/dist/backend/llvm/expr-bytes.js.map +1 -1
- package/dist/backend/llvm/expr-containers.js +14 -0
- package/dist/backend/llvm/expr-containers.js.map +1 -1
- package/dist/backend/llvm/expr-primitives.js +20 -11
- package/dist/backend/llvm/expr-primitives.js.map +1 -1
- package/dist/backend/llvm/expr-stream-bridges.js +16 -4
- package/dist/backend/llvm/expr-stream-bridges.js.map +1 -1
- package/dist/backend/llvm/integer-values.d.ts +5 -0
- package/dist/backend/llvm/integer-values.js +27 -3
- package/dist/backend/llvm/integer-values.js.map +1 -1
- package/dist/backend/llvm/lib-dispatch.js +133 -3
- package/dist/backend/llvm/lib-dispatch.js.map +1 -1
- package/dist/backend/llvm/lib-process.js +37 -1
- package/dist/backend/llvm/lib-process.js.map +1 -1
- package/dist/backend/llvm/lib-shared.js +21 -0
- package/dist/backend/llvm/lib-shared.js.map +1 -1
- package/dist/backend/llvm/publish.js +3 -3
- package/dist/backend/llvm/publish.js.map +1 -1
- package/dist/backend/llvm/reference-effects.js +3 -0
- package/dist/backend/llvm/reference-effects.js.map +1 -1
- package/dist/backend/llvm/shapes.js +2 -7
- package/dist/backend/llvm/shapes.js.map +1 -1
- package/dist/backend/llvm/stack-captures.js +1 -5
- package/dist/backend/llvm/stack-captures.js.map +1 -1
- package/dist/backend/llvm/union-repr.d.ts +4 -3
- package/dist/backend/llvm/union-repr.js +6 -5
- package/dist/backend/llvm/union-repr.js.map +1 -1
- package/dist/backend/llvm/walkers.js +13 -0
- package/dist/backend/llvm/walkers.js.map +1 -1
- package/dist/backend/native-codegen-core.d.ts +5 -3
- package/dist/backend/native-codegen-core.js +13 -6
- package/dist/backend/native-codegen-core.js.map +1 -1
- package/dist/backend/native-codegen.test.js +6 -4
- package/dist/backend/native-codegen.test.js.map +1 -1
- package/dist/backend/target-cpu.d.ts +26 -0
- package/dist/backend/target-cpu.js +98 -0
- package/dist/backend/target-cpu.js.map +1 -0
- package/dist/backend/target-cpu.test.d.ts +1 -0
- package/dist/backend/target-cpu.test.js +38 -0
- package/dist/backend/target-cpu.test.js.map +1 -0
- package/dist/cli/command.js +20 -1
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/usage.d.ts +4 -1
- package/dist/cli/usage.js +7 -0
- package/dist/cli/usage.js.map +1 -1
- package/dist/compile-types.d.ts +7 -0
- package/dist/diagnostics/diagnostic.js +1 -1
- package/dist/diagnostics/diagnostic.js.map +1 -1
- package/dist/executable/executable-cache.d.ts +3 -0
- package/dist/executable/executable-cache.js +4 -0
- package/dist/executable/executable-cache.js.map +1 -1
- package/dist/executable/executable-cache.test.js +2 -0
- package/dist/executable/executable-cache.test.js.map +1 -1
- package/dist/frontend/decl-projection.js +105 -10
- package/dist/frontend/decl-projection.js.map +1 -1
- package/dist/frontend/lowering/builtins/async-context.d.ts +8 -2
- package/dist/frontend/lowering/builtins/async-context.js +62 -3
- package/dist/frontend/lowering/builtins/async-context.js.map +1 -1
- package/dist/frontend/lowering/builtins/crypto.js +3 -1
- package/dist/frontend/lowering/builtins/crypto.js.map +1 -1
- package/dist/frontend/lowering/builtins/dates.js +4 -1
- package/dist/frontend/lowering/builtins/dates.js.map +1 -1
- package/dist/frontend/lowering/builtins/filesystem-calls.js +3 -3
- package/dist/frontend/lowering/builtins/filesystem-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-glob.js +6 -3
- package/dist/frontend/lowering/builtins/fs-glob.js.map +1 -1
- package/dist/frontend/lowering/builtins/fs-paths.d.ts +43 -5
- package/dist/frontend/lowering/builtins/fs-paths.js +245 -93
- package/dist/frontend/lowering/builtins/fs-paths.js.map +1 -1
- package/dist/frontend/lowering/builtins/module-calls.js +6 -3
- package/dist/frontend/lowering/builtins/module-calls.js.map +1 -1
- package/dist/frontend/lowering/builtins/promises.d.ts +1 -1
- package/dist/frontend/lowering/builtins/promises.js +149 -138
- package/dist/frontend/lowering/builtins/promises.js.map +1 -1
- package/dist/frontend/lowering/call-signatures.js +0 -1
- package/dist/frontend/lowering/call-signatures.js.map +1 -1
- package/dist/frontend/lowering/cjs-exports-object.js +1 -1
- package/dist/frontend/lowering/cjs-exports-object.js.map +1 -1
- package/dist/frontend/lowering/cjs-inline-require.d.ts +32 -0
- package/dist/frontend/lowering/cjs-inline-require.js +307 -4
- package/dist/frontend/lowering/cjs-inline-require.js.map +1 -1
- package/dist/frontend/lowering/class-dynamic-dispatch.d.ts +10 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js +114 -0
- package/dist/frontend/lowering/class-dynamic-dispatch.js.map +1 -1
- package/dist/frontend/lowering/class-method-mutations.js +54 -18
- package/dist/frontend/lowering/class-method-mutations.js.map +1 -1
- package/dist/frontend/lowering/class-protocols.d.ts +25 -0
- package/dist/frontend/lowering/class-protocols.js +183 -1
- package/dist/frontend/lowering/class-protocols.js.map +1 -1
- package/dist/frontend/lowering/completion-callbacks.d.ts +4 -0
- package/dist/frontend/lowering/completion-callbacks.js +146 -0
- package/dist/frontend/lowering/completion-callbacks.js.map +1 -0
- package/dist/frontend/lowering/containers/array-callbacks.d.ts +5 -4
- package/dist/frontend/lowering/containers/array-callbacks.js +7 -6
- package/dist/frontend/lowering/containers/array-callbacks.js.map +1 -1
- package/dist/frontend/lowering/containers/array-construction.js +5 -0
- package/dist/frontend/lowering/containers/array-construction.js.map +1 -1
- package/dist/frontend/lowering/containers/array-methods.js +11 -3
- package/dist/frontend/lowering/containers/array-methods.js.map +1 -1
- package/dist/frontend/lowering/containers/bytes.d.ts +25 -17
- package/dist/frontend/lowering/containers/bytes.js +453 -45
- package/dist/frontend/lowering/containers/bytes.js.map +1 -1
- package/dist/frontend/lowering/date-values.d.ts +11 -0
- package/dist/frontend/lowering/date-values.js +207 -0
- package/dist/frontend/lowering/date-values.js.map +1 -0
- package/dist/frontend/lowering/expressions/array-literals.js +6 -0
- package/dist/frontend/lowering/expressions/array-literals.js.map +1 -1
- package/dist/frontend/lowering/expressions/binary.js +64 -26
- package/dist/frontend/lowering/expressions/binary.js.map +1 -1
- package/dist/frontend/lowering/expressions/element-access.js +79 -0
- package/dist/frontend/lowering/expressions/element-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/identifiers.js +31 -1
- package/dist/frontend/lowering/expressions/identifiers.js.map +1 -1
- package/dist/frontend/lowering/expressions/property-access.js +56 -0
- package/dist/frontend/lowering/expressions/property-access.js.map +1 -1
- package/dist/frontend/lowering/expressions/typeof.js +6 -0
- package/dist/frontend/lowering/expressions/typeof.js.map +1 -1
- package/dist/frontend/lowering/expressions/updates.js +17 -0
- package/dist/frontend/lowering/expressions/updates.js.map +1 -1
- package/dist/frontend/lowering/function-returns.js +15 -0
- package/dist/frontend/lowering/function-returns.js.map +1 -1
- package/dist/frontend/lowering/indexed-unions.d.ts +54 -0
- package/dist/frontend/lowering/indexed-unions.js +401 -0
- package/dist/frontend/lowering/indexed-unions.js.map +1 -0
- package/dist/frontend/lowering/key-order-witness.js +210 -32
- package/dist/frontend/lowering/key-order-witness.js.map +1 -1
- package/dist/frontend/lowering/key-order-witness.test.js +104 -4
- package/dist/frontend/lowering/key-order-witness.test.js.map +1 -1
- package/dist/frontend/lowering/lower-assert.js +15 -3
- package/dist/frontend/lowering/lower-assert.js.map +1 -1
- package/dist/frontend/lowering/lower-calls.js +19 -3
- package/dist/frontend/lowering/lower-calls.js.map +1 -1
- package/dist/frontend/lowering/lower-classes.js +22 -47
- package/dist/frontend/lowering/lower-classes.js.map +1 -1
- package/dist/frontend/lowering/lower-exprs.js +205 -1
- package/dist/frontend/lowering/lower-exprs.js.map +1 -1
- package/dist/frontend/lowering/lower-generators.js +1 -1
- package/dist/frontend/lowering/lower-generators.js.map +1 -1
- package/dist/frontend/lowering/lower-inspect.d.ts +1 -1
- package/dist/frontend/lowering/lower-inspect.js +35 -11
- package/dist/frontend/lowering/lower-inspect.js.map +1 -1
- package/dist/frontend/lowering/lower-modules.js +21 -5
- package/dist/frontend/lowering/lower-modules.js.map +1 -1
- package/dist/frontend/lowering/lower-stmts.js +100 -34
- package/dist/frontend/lowering/lower-stmts.js.map +1 -1
- package/dist/frontend/lowering/lowerer.d.ts +30 -2
- package/dist/frontend/lowering/lowerer.js +68 -7
- package/dist/frontend/lowering/lowerer.js.map +1 -1
- package/dist/frontend/lowering/object-factory-new.d.ts +5 -0
- package/dist/frontend/lowering/object-factory-new.js +20 -6
- package/dist/frontend/lowering/object-factory-new.js.map +1 -1
- package/dist/frontend/lowering/overload-choice.d.ts +33 -0
- package/dist/frontend/lowering/overload-choice.js +190 -0
- package/dist/frontend/lowering/overload-choice.js.map +1 -0
- package/dist/frontend/lowering/surfaces.js +55 -2
- package/dist/frontend/lowering/surfaces.js.map +1 -1
- package/dist/frontend/pipeline.js +1 -1
- package/dist/frontend/pipeline.js.map +1 -1
- package/dist/frontend/program-analysis.d.ts +5 -1
- package/dist/frontend/program-analysis.js +5 -0
- package/dist/frontend/program-analysis.js.map +1 -1
- package/dist/frontend/program.d.ts +13 -5
- package/dist/frontend/program.js +197 -14
- package/dist/frontend/program.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.d.ts +3 -0
- package/dist/frontend/ts7/semantic-model.js +5 -0
- package/dist/frontend/ts7/semantic-model.js.map +1 -1
- package/dist/frontend/ts7/semantic-model.test.js +6 -1
- package/dist/frontend/ts7/semantic-model.test.js.map +1 -1
- package/dist/frontend/ts7/semantic-types.d.ts +1 -1
- package/dist/frontend/ts7/semantic-types.js +1 -1
- package/dist/frontend/ts7/semantic-types.js.map +1 -1
- package/dist/frontend/type-mapper.js +45 -16
- package/dist/frontend/type-mapper.js.map +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/ir/builtin-effects.js +8 -0
- package/dist/ir/builtin-effects.js.map +1 -1
- package/dist/ir/builtin-signatures.d.ts +1 -1
- package/dist/ir/builtin-signatures.js +56 -0
- package/dist/ir/builtin-signatures.js.map +1 -1
- package/dist/ir/int32-slots.js +7 -0
- package/dist/ir/int32-slots.js.map +1 -1
- package/dist/ir/int32-slots.test.js +33 -0
- package/dist/ir/int32-slots.test.js.map +1 -1
- package/dist/ir/integer-loops.js +14 -4
- package/dist/ir/integer-loops.js.map +1 -1
- package/dist/ir/ir.d.ts +13 -3
- package/dist/ir/ir.js +19 -5
- package/dist/ir/ir.js.map +1 -1
- package/dist/ir/ir.test.js +2 -1
- package/dist/ir/ir.test.js.map +1 -1
- package/dist/ir/js-ic.d.ts +2 -15
- package/dist/ir/js-ic.js +11 -79
- package/dist/ir/js-ic.js.map +1 -1
- package/dist/ir/js-ic.test.js +0 -142
- package/dist/ir/js-ic.test.js.map +1 -1
- package/dist/ir/runtime-features.js +25 -1
- package/dist/ir/runtime-features.js.map +1 -1
- package/dist/ir/validate.js +46 -5
- package/dist/ir/validate.js.map +1 -1
- package/dist/library/ir-policy.js +1 -0
- package/dist/library/ir-policy.js.map +1 -1
- package/dist/native/prepare.d.ts +1 -1
- package/dist/native/prepare.js +11 -1
- package/dist/native/prepare.js.map +1 -1
- package/dist/native/prepare.test.js +18 -2
- package/dist/native/prepare.test.js.map +1 -1
- package/package.json +20 -20
- package/surface-manifest.json +2 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-features.js","sourceRoot":"","sources":["../../src/ir/runtime-features.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime-features.js","sourceRoot":"","sources":["../../src/ir/runtime-features.ts"],"names":[],"mappings":"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"}
|
package/dist/ir/validate.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* an ICE that points at source is a gift to whoever debugs it.
|
|
5
5
|
*/
|
|
6
6
|
import { validByteNumberToken } from "./byte-numbers.js";
|
|
7
|
-
import { arrayOf, iterableArmsElem, BYTES_ELEMENT_NAME, BOOL, BYTES_U8, bytesOf, canAdaptDynFuncTo, canDynCheckTo, canConvertToDyn, DYN, DYN_HANDLE_KINDS, F64, ffiClassType, ffiSourceParamTypes, isDirentShape, isDynTypedRefType, isFfiCallbackParam, isFfiContextParam, isFfiReleaseParam, isJsonSafeType, isJsonStringifySafeType, isRefCounted, isSortValuesElement, isSupportedArrayElem, isSupportedIndexValue, isSupportedMapKey, isSupportedMapValue, isSupportedSetElem, isUnitType, REF_TRUTHY_KINDS, RUNTIME_EMITTER_CLASS, RUNTIME_ERROR_CLASSES, RUNTIME_STREAM_CLASSES, shapeHasAccessorSlots, STRING, typeEquals, typeKey, maybePromiseUnionArmsOk, VOID, } from "./ir.js";
|
|
7
|
+
import { arrayOf, iterableArmsElem, BYTES_ELEMENT_NAME, BOOL, BYTES_U8, bytesOf, canAdaptDynFuncTo, canDynCheckTo, canConvertToDyn, DYN, DYN_HANDLE_KINDS, F64, ffiClassType, ffiSourceParamTypes, isDirentShape, isDynTypedRefType, isFfiCallbackParam, isFfiContextParam, isFfiReleaseParam, isJsonSafeType, isJsonStringifySafeType, isRefCounted, isSortValuesElement, isSupportedArrayElem, isSupportedIndexValue, isSupportedMapKey, isSupportedMapValue, isSupportedSetElem, isUnitType, REF_TRUTHY_KINDS, RUNTIME_EMITTER_CLASS, RUNTIME_ERROR_CLASSES, RUNTIME_STREAM_CLASSES, shapeHasAccessorSlots, STRING, typeEquals, typeKey, maybePromiseUnionArmsOk, unionContainerArmsOk, VOID, } from "./ir.js";
|
|
8
8
|
import { DYN_CLASS_PROPERTIES, callSiteReturnType, classValueConstructor } from "./ir.js";
|
|
9
9
|
import { unionWideningTags } from "./analysis.js";
|
|
10
10
|
import { alwaysReturns } from "./control-flow.js";
|
|
@@ -681,7 +681,6 @@ export function validateModule(mod) {
|
|
|
681
681
|
if (arm.kind === "void" ||
|
|
682
682
|
arm.kind === "union" ||
|
|
683
683
|
arm.kind === "dyn" ||
|
|
684
|
-
arm.kind === "date" ||
|
|
685
684
|
(arm.kind === "generator" && iterableArmsElem(u.arms) === null)) {
|
|
686
685
|
errors.push({ message: `union ${u.id}: arm ${i} is ${arm.kind}`, loc: noLoc });
|
|
687
686
|
}
|
|
@@ -691,6 +690,9 @@ export function validateModule(mod) {
|
|
|
691
690
|
loc: noLoc,
|
|
692
691
|
});
|
|
693
692
|
}
|
|
693
|
+
if (arm.kind === "date" && !unionContainerArmsOk(u.arms)) {
|
|
694
|
+
errors.push({ message: `union ${u.id}: date arm ${i} beside non-unit arms`, loc: noLoc });
|
|
695
|
+
}
|
|
694
696
|
if (arm.kind === "record" && !recordsById.has(arm.shapeId)) {
|
|
695
697
|
errors.push({
|
|
696
698
|
message: `union ${u.id}: arm ${i} references undeclared shape "${arm.shapeId}"`,
|
|
@@ -1338,6 +1340,7 @@ function validateFunction(fn, functions, ffiByName, classes, records, recordVali
|
|
|
1338
1340
|
e.left.type.kind === "map" ||
|
|
1339
1341
|
e.left.type.kind === "set" ||
|
|
1340
1342
|
e.left.type.kind === "regex" ||
|
|
1343
|
+
e.left.type.kind === "date" ||
|
|
1341
1344
|
e.left.type.kind === "url" ||
|
|
1342
1345
|
e.left.type.kind === "object" ||
|
|
1343
1346
|
e.left.type.kind === "record" ||
|
|
@@ -1993,6 +1996,9 @@ function validateFunction(fn, functions, ffiByName, classes, records, recordVali
|
|
|
1993
1996
|
indexOfNum: { argTypes: [F64, F64], minArgs: 1, result: F64 },
|
|
1994
1997
|
lastIndexOfNum: { argTypes: [F64, F64], minArgs: 1, result: F64 },
|
|
1995
1998
|
includesNum: { argTypes: [F64, F64], minArgs: 1, result: BOOL },
|
|
1999
|
+
indexOfElem: { argTypes: [F64, F64], minArgs: 2, result: F64 },
|
|
2000
|
+
lastIndexOfElem: { argTypes: [F64, F64], minArgs: 2, result: F64 },
|
|
2001
|
+
includesElem: { argTypes: [F64, F64], minArgs: 2, result: BOOL },
|
|
1996
2002
|
fill: { argTypes: [BYTES_U8, F64, F64], minArgs: 1, result: BYTES_U8 },
|
|
1997
2003
|
fillNum: { argTypes: [F64, F64, F64], minArgs: 1, result: BYTES_U8 },
|
|
1998
2004
|
// Per-element TypedArray fill (any elem — the non-u8 fill path).
|
|
@@ -2162,8 +2168,9 @@ function validateFunction(fn, functions, ffiByName, classes, records, recordVali
|
|
|
2162
2168
|
if ((e.method === "sortPrimitive" || e.method === "toSortedPrimitive") &&
|
|
2163
2169
|
elem.kind !== "string" &&
|
|
2164
2170
|
elem.kind !== "f64" &&
|
|
2165
|
-
elem.kind !== "bool"
|
|
2166
|
-
|
|
2171
|
+
elem.kind !== "bool" &&
|
|
2172
|
+
elem.kind !== "date") {
|
|
2173
|
+
err(`arrIntrinsic ${e.method} requires primitive or Date elements, got ${elem.kind}`, e.loc);
|
|
2167
2174
|
}
|
|
2168
2175
|
if (e.method === "sortValues" || e.method === "sortDense") {
|
|
2169
2176
|
const arms = elem.kind === "union" ? unions.get(elem.unionId)?.arms : undefined;
|
|
@@ -2229,10 +2236,15 @@ function validateFunction(fn, functions, ffiByName, classes, records, recordVali
|
|
|
2229
2236
|
elem.kind !== "f64" &&
|
|
2230
2237
|
elem.kind !== "string" &&
|
|
2231
2238
|
elem.kind !== "bool" &&
|
|
2239
|
+
elem.kind !== "date" &&
|
|
2232
2240
|
!(elem.kind === "union" &&
|
|
2233
2241
|
(unions
|
|
2234
2242
|
.get(elem.unionId)
|
|
2235
|
-
?.arms.every((a) => a.kind === "f64" ||
|
|
2243
|
+
?.arms.every((a) => a.kind === "f64" ||
|
|
2244
|
+
a.kind === "string" ||
|
|
2245
|
+
a.kind === "bool" ||
|
|
2246
|
+
a.kind === "date" ||
|
|
2247
|
+
isUnitType(a)) ??
|
|
2236
2248
|
false))) {
|
|
2237
2249
|
err(`arrIntrinsic join on ${elem.kind} elements (frontend must reject)`, e.loc);
|
|
2238
2250
|
}
|
|
@@ -4898,6 +4910,35 @@ function validateFunction(fn, functions, ffiByName, classes, records, recordVali
|
|
|
4898
4910
|
return false;
|
|
4899
4911
|
}
|
|
4900
4912
|
function checkLibSpecialCall(e) {
|
|
4913
|
+
if (e.fn === "promise.fulfilledValue") {
|
|
4914
|
+
const promise = e.args[0]?.type;
|
|
4915
|
+
if (promise?.kind !== "promise" ||
|
|
4916
|
+
e.type.kind === "void" ||
|
|
4917
|
+
isUnitType(e.type) ||
|
|
4918
|
+
promise.inner.kind !== "void")
|
|
4919
|
+
err(`libCall ${e.fn} must read a Promise<void> entry at a non-void type`, e.loc);
|
|
4920
|
+
return true;
|
|
4921
|
+
}
|
|
4922
|
+
if (e.fn === "promise.allTuple") {
|
|
4923
|
+
const [entries, build] = e.args;
|
|
4924
|
+
if (entries?.type.kind !== "array" ||
|
|
4925
|
+
entries.type.elem.kind !== "promise" ||
|
|
4926
|
+
entries.type.elem.inner.kind !== "void" ||
|
|
4927
|
+
build?.kind !== "closure" ||
|
|
4928
|
+
build.captures.length > 0 ||
|
|
4929
|
+
build.type.kind !== "func" ||
|
|
4930
|
+
e.type.kind !== "promise" ||
|
|
4931
|
+
!typeEquals(build.type.ret, e.type.inner))
|
|
4932
|
+
err(`libCall ${e.fn} must join Promise<void> entries into its builder's tuple`, e.loc);
|
|
4933
|
+
return true;
|
|
4934
|
+
}
|
|
4935
|
+
if (e.fn === "als.bindCallback") {
|
|
4936
|
+
// The bound function, at its closure argument's own type.
|
|
4937
|
+
const fn = e.args[0]?.type;
|
|
4938
|
+
if (fn?.kind !== "func" || !typeEquals(e.type, fn))
|
|
4939
|
+
err(`libCall ${e.fn} must return its function argument's type`, e.loc);
|
|
4940
|
+
return true;
|
|
4941
|
+
}
|
|
4901
4942
|
if (e.fn === "crypto.randomFillView" ||
|
|
4902
4943
|
e.fn === "crypto.randomFillViewRest" ||
|
|
4903
4944
|
e.fn === "crypto.getRandomValues") {
|