@scriptc/compiler 0.2.3 → 0.2.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.
Files changed (135) hide show
  1. package/dist/backend/llvm/borrowed-inputs.d.ts +15 -0
  2. package/dist/backend/llvm/borrowed-inputs.js +28 -0
  3. package/dist/backend/llvm/borrowed-inputs.js.map +1 -0
  4. package/dist/backend/llvm/byte-numbers.d.ts +10 -0
  5. package/dist/backend/llvm/byte-numbers.js +235 -0
  6. package/dist/backend/llvm/byte-numbers.js.map +1 -0
  7. package/dist/backend/llvm/bytes-bounds.d.ts +9 -0
  8. package/dist/backend/llvm/bytes-bounds.js +189 -0
  9. package/dist/backend/llvm/bytes-bounds.js.map +1 -0
  10. package/dist/backend/llvm/call-lifetimes.d.ts +7 -0
  11. package/dist/backend/llvm/call-lifetimes.js +27 -7
  12. package/dist/backend/llvm/call-lifetimes.js.map +1 -1
  13. package/dist/backend/llvm/call-lifetimes.test.js +54 -0
  14. package/dist/backend/llvm/call-lifetimes.test.js.map +1 -1
  15. package/dist/backend/llvm/checked-value-lifetimes.d.ts +9 -0
  16. package/dist/backend/llvm/checked-value-lifetimes.js +35 -0
  17. package/dist/backend/llvm/checked-value-lifetimes.js.map +1 -0
  18. package/dist/backend/llvm/counted-loops.d.ts +6 -0
  19. package/dist/backend/llvm/counted-loops.js +28 -0
  20. package/dist/backend/llvm/counted-loops.js.map +1 -0
  21. package/dist/backend/llvm/emitter.d.ts +25 -9
  22. package/dist/backend/llvm/emitter.js +131 -31
  23. package/dist/backend/llvm/emitter.js.map +1 -1
  24. package/dist/backend/llvm/emitter.test.js +4 -4
  25. package/dist/backend/llvm/emitter.test.js.map +1 -1
  26. package/dist/backend/llvm/expr-async.js +3 -2
  27. package/dist/backend/llvm/expr-async.js.map +1 -1
  28. package/dist/backend/llvm/expr-bytes.d.ts +4 -4
  29. package/dist/backend/llvm/expr-bytes.js +68 -35
  30. package/dist/backend/llvm/expr-bytes.js.map +1 -1
  31. package/dist/backend/llvm/expr-calls.js +21 -13
  32. package/dist/backend/llvm/expr-calls.js.map +1 -1
  33. package/dist/backend/llvm/expr-containers.d.ts +2 -1
  34. package/dist/backend/llvm/expr-containers.js +68 -46
  35. package/dist/backend/llvm/expr-containers.js.map +1 -1
  36. package/dist/backend/llvm/expr-context.d.ts +11 -0
  37. package/dist/backend/llvm/expr-control.js +26 -5
  38. package/dist/backend/llvm/expr-control.js.map +1 -1
  39. package/dist/backend/llvm/expr-dynamic.js +32 -30
  40. package/dist/backend/llvm/expr-dynamic.js.map +1 -1
  41. package/dist/backend/llvm/expr-primitives.js +55 -22
  42. package/dist/backend/llvm/expr-primitives.js.map +1 -1
  43. package/dist/backend/llvm/expr-records.js +8 -2
  44. package/dist/backend/llvm/expr-records.js.map +1 -1
  45. package/dist/backend/llvm/integer-values.d.ts +10 -0
  46. package/dist/backend/llvm/integer-values.js +41 -0
  47. package/dist/backend/llvm/integer-values.js.map +1 -0
  48. package/dist/backend/llvm/integer-views.d.ts +7 -0
  49. package/dist/backend/llvm/integer-views.js +67 -0
  50. package/dist/backend/llvm/integer-views.js.map +1 -0
  51. package/dist/backend/llvm/integer-views.test.d.ts +1 -0
  52. package/dist/backend/llvm/integer-views.test.js +34 -0
  53. package/dist/backend/llvm/integer-views.test.js.map +1 -0
  54. package/dist/backend/llvm/lib-dispatch.js +3 -1
  55. package/dist/backend/llvm/lib-dispatch.js.map +1 -1
  56. package/dist/backend/llvm/lib-filesystem.js +5 -5
  57. package/dist/backend/llvm/lib-filesystem.js.map +1 -1
  58. package/dist/backend/llvm/local-array-reads.d.ts +2 -4
  59. package/dist/backend/llvm/local-array-reads.js +4 -91
  60. package/dist/backend/llvm/local-array-reads.js.map +1 -1
  61. package/dist/backend/llvm/local-array-reads.test.js +11 -11
  62. package/dist/backend/llvm/local-array-reads.test.js.map +1 -1
  63. package/dist/backend/llvm/map-read-lifetimes.js +2 -2
  64. package/dist/backend/llvm/map-read-lifetimes.js.map +1 -1
  65. package/dist/backend/llvm/map-read-lifetimes.test.js +5 -1
  66. package/dist/backend/llvm/map-read-lifetimes.test.js.map +1 -1
  67. package/dist/backend/llvm/reference-effects.d.ts +22 -0
  68. package/dist/backend/llvm/reference-effects.js +148 -0
  69. package/dist/backend/llvm/reference-effects.js.map +1 -0
  70. package/dist/backend/llvm/reference-effects.test.d.ts +1 -0
  71. package/dist/backend/llvm/reference-effects.test.js +74 -0
  72. package/dist/backend/llvm/reference-effects.test.js.map +1 -0
  73. package/dist/backend/llvm/shapes.d.ts +7 -4
  74. package/dist/backend/llvm/shapes.js +23 -6
  75. package/dist/backend/llvm/shapes.js.map +1 -1
  76. package/dist/backend/llvm/stack-unions.test.js +23 -2
  77. package/dist/backend/llvm/stack-unions.test.js.map +1 -1
  78. package/dist/backend/llvm/string-construction.d.ts +10 -0
  79. package/dist/backend/llvm/string-construction.js +38 -0
  80. package/dist/backend/llvm/string-construction.js.map +1 -0
  81. package/dist/backend/llvm/string-construction.test.d.ts +1 -0
  82. package/dist/backend/llvm/string-construction.test.js +65 -0
  83. package/dist/backend/llvm/string-construction.test.js.map +1 -0
  84. package/dist/backend/llvm/string-lifetimes.d.ts +2 -2
  85. package/dist/backend/llvm/string-lifetimes.js +5 -3
  86. package/dist/backend/llvm/string-lifetimes.js.map +1 -1
  87. package/dist/backend/llvm/string-lifetimes.test.js +19 -10
  88. package/dist/backend/llvm/string-lifetimes.test.js.map +1 -1
  89. package/dist/frontend/lowering/collection-ingestion.js +9 -0
  90. package/dist/frontend/lowering/collection-ingestion.js.map +1 -1
  91. package/dist/frontend/lowering/containers/string-and-regexp.js +6 -0
  92. package/dist/frontend/lowering/containers/string-and-regexp.js.map +1 -1
  93. package/dist/frontend/lowering/lower-builtins.js +2 -0
  94. package/dist/frontend/lowering/lower-builtins.js.map +1 -1
  95. package/dist/frontend/lowering/lower-classes.js +3 -3
  96. package/dist/frontend/lowering/lower-classes.js.map +1 -1
  97. package/dist/frontend/lowering/lower-containers.js +12 -34
  98. package/dist/frontend/lowering/lower-containers.js.map +1 -1
  99. package/dist/frontend/lowering/lower-exprs.js +12 -2
  100. package/dist/frontend/lowering/lower-exprs.js.map +1 -1
  101. package/dist/frontend/lowering/lowerer.js +10 -3
  102. package/dist/frontend/lowering/lowerer.js.map +1 -1
  103. package/dist/frontend/type-mapper.js +2 -2
  104. package/dist/frontend/type-mapper.js.map +1 -1
  105. package/dist/ir/analysis.js +3 -1
  106. package/dist/ir/analysis.js.map +1 -1
  107. package/dist/ir/byte-numbers.d.ts +20 -0
  108. package/dist/ir/byte-numbers.js +65 -0
  109. package/dist/ir/byte-numbers.js.map +1 -0
  110. package/dist/ir/byte-numbers.test.d.ts +1 -0
  111. package/dist/ir/byte-numbers.test.js +42 -0
  112. package/dist/ir/byte-numbers.test.js.map +1 -0
  113. package/dist/ir/integer-loops.d.ts +19 -0
  114. package/dist/ir/integer-loops.js +107 -1
  115. package/dist/ir/integer-loops.js.map +1 -1
  116. package/dist/ir/integer-loops.test.js +51 -1
  117. package/dist/ir/integer-loops.test.js.map +1 -1
  118. package/dist/ir/integer-ranges.d.ts +8 -6
  119. package/dist/ir/integer-ranges.js +343 -89
  120. package/dist/ir/integer-ranges.js.map +1 -1
  121. package/dist/ir/integer-ranges.test.js +54 -3
  122. package/dist/ir/integer-ranges.test.js.map +1 -1
  123. package/dist/ir/ir.d.ts +8 -5
  124. package/dist/ir/ir.js +16 -5
  125. package/dist/ir/ir.js.map +1 -1
  126. package/dist/ir/validate.js +47 -29
  127. package/dist/ir/validate.js.map +1 -1
  128. package/dist/ir/validate.test.js +20 -0
  129. package/dist/ir/validate.test.js.map +1 -1
  130. package/dist/native/toolchain.js +6 -3
  131. package/dist/native/toolchain.js.map +1 -1
  132. package/dist/native/toolchain.test.js +43 -5
  133. package/dist/native/toolchain.test.js.map +1 -1
  134. package/package.json +20 -20
  135. package/surface-manifest.json +1 -1
@@ -4095,13 +4095,13 @@ export function describeComponentBlocker(widened, ctx) {
4095
4095
  return `the ${container} shape is supported, but its ${role} type '${text(arg)}' does not compile`;
4096
4096
  }
4097
4097
  if ((container === "Map" || container === "ReadonlyMap") && i === 0 && !isSupportedMapKey(mapped, mapped.kind === "union" ? ctx.unions.get(mapped.unionId)?.arms : undefined)) {
4098
- return `the ${container} shape is supported, but '${text(arg)}' is outside its supported key domain (numbers, strings, identity references, or unions of identity references)`;
4098
+ return `the ${container} shape is supported, but '${text(arg)}' is outside its supported key domain (numbers, strings, booleans, bigints, identity references, or supported unions)`;
4099
4099
  }
4100
4100
  if ((container === "Map" || container === "ReadonlyMap") && i === 1 && !isSupportedMapValue(mapped)) {
4101
4101
  return `the ${container} shape is supported, but '${text(arg)}' values have no Map slot yet`;
4102
4102
  }
4103
4103
  if ((container === "Set" || container === "ReadonlySet") && !isSupportedSetElem(mapped, mapped.kind === "union" ? ctx.unions.get(mapped.unionId)?.arms : undefined)) {
4104
- return `the ${container} shape is supported, but '${text(arg)}' is outside its supported element domain (numbers, strings, identity references, or unions of identity references)`;
4104
+ return `the ${container} shape is supported, but '${text(arg)}' is outside its supported element domain (numbers, strings, booleans, bigints, identity references, or supported unions)`;
4105
4105
  }
4106
4106
  }
4107
4107
  // Every argument passed the per-slot checks and the type still failed: