@markw65/monkeyc-optimizer 1.1.58 → 1.1.60

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/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  All notable changes to the "monkeyc-optimizer" package will be documented in this file.
4
4
 
5
+ ### 1.1.60
6
+
7
+ - Disable the "remove argc" optimization, as it's going to start breaking verification in the app store.
8
+
9
+ ### 1.1.59
10
+
11
+ - Getv and Putv can directly access local 0 (Fixes #34)
12
+
5
13
  ### 1.1.58
6
14
 
7
15
  - Update to [@markw65/prettier-plugin-monkeyc@1.0.57](https://github.com/markw65/prettier-plugin-monkeyc/blob/main/CHANGELOG.md#1057)
package/build/api.cjs CHANGED
@@ -18,47 +18,47 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var api_exports = {};
20
20
  __export(api_exports, {
21
- checkCompilerVersion: () => import_chunk_XC5IVRTO.checkCompilerVersion,
22
- collectNamespaces: () => import_chunk_XC5IVRTO.collectNamespaces,
23
- createDocumentationMap: () => import_chunk_XC5IVRTO.createDocumentationMap,
24
- diagnostic: () => import_chunk_XC5IVRTO.diagnostic,
25
- diagnosticHelper: () => import_chunk_XC5IVRTO.diagnosticHelper,
26
- findNamesInScope: () => import_chunk_XC5IVRTO.findNamesInScope,
27
- findUsingForNode: () => import_chunk_XC5IVRTO.findUsingForNode,
28
- formatAst: () => import_chunk_XC5IVRTO.formatAst,
29
- formatAstLongLines: () => import_chunk_XC5IVRTO.formatAstLongLines,
30
- formatScopedName: () => import_chunk_XC5IVRTO.formatScopedName,
31
- getApiFunctionInfo: () => import_chunk_XC5IVRTO.getApiFunctionInfo,
32
- getApiMapping: () => import_chunk_XC5IVRTO.getApiMapping,
33
- getSuperClasses: () => import_chunk_XC5IVRTO.getSuperClasses,
21
+ checkCompilerVersion: () => import_chunk_X2C4HXXZ.checkCompilerVersion,
22
+ collectNamespaces: () => import_chunk_X2C4HXXZ.collectNamespaces,
23
+ createDocumentationMap: () => import_chunk_X2C4HXXZ.createDocumentationMap,
24
+ diagnostic: () => import_chunk_X2C4HXXZ.diagnostic,
25
+ diagnosticHelper: () => import_chunk_X2C4HXXZ.diagnosticHelper,
26
+ findNamesInScope: () => import_chunk_X2C4HXXZ.findNamesInScope,
27
+ findUsingForNode: () => import_chunk_X2C4HXXZ.findUsingForNode,
28
+ formatAst: () => import_chunk_X2C4HXXZ.formatAst,
29
+ formatAstLongLines: () => import_chunk_X2C4HXXZ.formatAstLongLines,
30
+ formatScopedName: () => import_chunk_X2C4HXXZ.formatScopedName,
31
+ getApiFunctionInfo: () => import_chunk_X2C4HXXZ.getApiFunctionInfo,
32
+ getApiMapping: () => import_chunk_X2C4HXXZ.getApiMapping,
33
+ getSuperClasses: () => import_chunk_X2C4HXXZ.getSuperClasses,
34
34
  hasProperty: () => import_chunk_MBTLUWXR.hasProperty,
35
- isClassVariable: () => import_chunk_XC5IVRTO.isClassVariable,
36
- isLocal: () => import_chunk_XC5IVRTO.isLocal,
37
- isLookupCandidate: () => import_chunk_XC5IVRTO.isLookupCandidate,
38
- isStateNode: () => import_chunk_XC5IVRTO.isStateNode,
39
- lookupByFullName: () => import_chunk_XC5IVRTO.lookupByFullName,
40
- lookupNext: () => import_chunk_XC5IVRTO.lookupNext,
41
- lookupResultContains: () => import_chunk_XC5IVRTO.lookupResultContains,
42
- lookupWithType: () => import_chunk_XC5IVRTO.lookupWithType,
43
- makeToyboxLink: () => import_chunk_XC5IVRTO.makeToyboxLink,
44
- mapVarDeclsByType: () => import_chunk_XC5IVRTO.mapVarDeclsByType,
45
- markInvokeClassMethod: () => import_chunk_XC5IVRTO.markInvokeClassMethod,
46
- parseSdkVersion: () => import_chunk_XC5IVRTO.parseSdkVersion,
47
- resolveDiagnostics: () => import_chunk_XC5IVRTO.resolveDiagnostics,
48
- resolveDiagnosticsMap: () => import_chunk_XC5IVRTO.resolveDiagnosticsMap,
49
- sameLookupResult: () => import_chunk_XC5IVRTO.sameLookupResult,
35
+ isClassVariable: () => import_chunk_X2C4HXXZ.isClassVariable,
36
+ isLocal: () => import_chunk_X2C4HXXZ.isLocal,
37
+ isLookupCandidate: () => import_chunk_X2C4HXXZ.isLookupCandidate,
38
+ isStateNode: () => import_chunk_X2C4HXXZ.isStateNode,
39
+ lookupByFullName: () => import_chunk_X2C4HXXZ.lookupByFullName,
40
+ lookupNext: () => import_chunk_X2C4HXXZ.lookupNext,
41
+ lookupResultContains: () => import_chunk_X2C4HXXZ.lookupResultContains,
42
+ lookupWithType: () => import_chunk_X2C4HXXZ.lookupWithType,
43
+ makeToyboxLink: () => import_chunk_X2C4HXXZ.makeToyboxLink,
44
+ mapVarDeclsByType: () => import_chunk_X2C4HXXZ.mapVarDeclsByType,
45
+ markInvokeClassMethod: () => import_chunk_X2C4HXXZ.markInvokeClassMethod,
46
+ parseSdkVersion: () => import_chunk_X2C4HXXZ.parseSdkVersion,
47
+ resolveDiagnostics: () => import_chunk_X2C4HXXZ.resolveDiagnostics,
48
+ resolveDiagnosticsMap: () => import_chunk_X2C4HXXZ.resolveDiagnosticsMap,
49
+ sameLookupResult: () => import_chunk_X2C4HXXZ.sameLookupResult,
50
50
  traverseAst: () => import_chunk_MBTLUWXR.traverseAst,
51
- variableDeclarationName: () => import_chunk_XC5IVRTO.variableDeclarationName,
52
- visitReferences: () => import_chunk_XC5IVRTO.visitReferences,
53
- visit_resources: () => import_chunk_XC5IVRTO.visit_resources,
54
- visitorNode: () => import_chunk_XC5IVRTO.visitorNode
51
+ variableDeclarationName: () => import_chunk_X2C4HXXZ.variableDeclarationName,
52
+ visitReferences: () => import_chunk_X2C4HXXZ.visitReferences,
53
+ visit_resources: () => import_chunk_X2C4HXXZ.visit_resources,
54
+ visitorNode: () => import_chunk_X2C4HXXZ.visitorNode
55
55
  });
56
56
  module.exports = __toCommonJS(api_exports);
57
- var import_chunk_XC5IVRTO = require("./chunk-XC5IVRTO.cjs");
57
+ var import_chunk_X2C4HXXZ = require("./chunk-X2C4HXXZ.cjs");
58
58
  var import_chunk_SG7ODKRM = require("./chunk-SG7ODKRM.cjs");
59
59
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
60
60
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
61
- (0, import_chunk_XC5IVRTO.init_api)();
61
+ (0, import_chunk_X2C4HXXZ.init_api)();
62
62
  // Annotate the CommonJS export names for ESM import in node:
63
63
  0 && (module.exports = {
64
64
  checkCompilerVersion,
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var chunk_XC5IVRTO_exports = {};
30
- __export(chunk_XC5IVRTO_exports, {
29
+ var chunk_X2C4HXXZ_exports = {};
30
+ __export(chunk_X2C4HXXZ_exports, {
31
31
  EnumTagsConst: () => EnumTagsConst,
32
32
  LastTypeTag: () => LastTypeTag,
33
33
  ObjectLikeTagsConst: () => ObjectLikeTagsConst,
@@ -133,7 +133,7 @@ __export(chunk_XC5IVRTO_exports, {
133
133
  visitorNode: () => visitorNode,
134
134
  xml_util_exports: () => xml_util_exports
135
135
  });
136
- module.exports = __toCommonJS(chunk_XC5IVRTO_exports);
136
+ module.exports = __toCommonJS(chunk_X2C4HXXZ_exports);
137
137
  var import_chunk_SG7ODKRM = require("./chunk-SG7ODKRM.cjs");
138
138
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
139
139
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
@@ -20420,19 +20420,19 @@ function opReadsLocal(bytecode) {
20420
20420
  case 67:
20421
20421
  case 68:
20422
20422
  case 42:
20423
+ case 13:
20424
+ case 14:
20423
20425
  return 0;
20424
20426
  case 70:
20425
20427
  return bytecode.arg.local;
20426
20428
  case 18:
20427
20429
  return bytecode.arg;
20428
20430
  case 19:
20429
- case 14:
20430
20431
  case 17:
20431
20432
  case 73:
20432
20433
  case 21:
20433
20434
  case 15:
20434
20435
  case 72:
20435
- case 13:
20436
20436
  case 69:
20437
20437
  case 71:
20438
20438
  case 16:
@@ -22079,11 +22079,11 @@ function localDCE(func, context) {
22079
22079
  dceInfo.stack.push({ dead: false });
22080
22080
  }
22081
22081
  dceInfo.locals.delete(bytecode.arg);
22082
- break;
22082
+ continue;
22083
22083
  }
22084
22084
  case 2:
22085
22085
  dceInfo.stack.push({ dead: true, deps: [i] });
22086
- break;
22086
+ continue;
22087
22087
  case 46: {
22088
22088
  const item = dceInfo.stack.pop();
22089
22089
  if (item?.dead) {
@@ -22095,7 +22095,7 @@ function localDCE(func, context) {
22095
22095
  dceInfo.stack[dceInfo.stack.length - 1 - bytecode.arg].dead = false;
22096
22096
  }
22097
22097
  }
22098
- break;
22098
+ continue;
22099
22099
  }
22100
22100
  case 70:
22101
22101
  case 68:
@@ -22128,11 +22128,7 @@ function localDCE(func, context) {
22128
22128
  item.deps.push(i);
22129
22129
  reportNop(item);
22130
22130
  item.deps.forEach((index) => makeNop(block.bytecodes[index]));
22131
- } else {
22132
- const local = opReadsLocal(bytecode);
22133
- if (local != null) {
22134
- dceInfo.locals.add(local);
22135
- }
22131
+ continue;
22136
22132
  }
22137
22133
  break;
22138
22134
  }
@@ -22162,10 +22158,10 @@ function localDCE(func, context) {
22162
22158
  makePopv(bytecode);
22163
22159
  dceInfo.stack.push({ dead: true, deps: item.deps.slice() });
22164
22160
  dceInfo.stack.push({ dead: true, deps: [i] });
22165
- } else {
22166
- dceInfo.stack.push({ dead: false });
22167
- dceInfo.stack.push({ dead: false });
22161
+ continue;
22168
22162
  }
22163
+ dceInfo.stack.push({ dead: false });
22164
+ dceInfo.stack.push({ dead: false });
22169
22165
  break;
22170
22166
  }
22171
22167
  case 21:
@@ -22182,16 +22178,16 @@ function localDCE(func, context) {
22182
22178
  makePopv(bytecode);
22183
22179
  item.deps.forEach((index) => makeNop(block.bytecodes[index]));
22184
22180
  dceInfo.stack.push({ dead: true, deps: [i] });
22185
- } else {
22186
- dceInfo.stack.push({ dead: false });
22181
+ continue;
22187
22182
  }
22183
+ dceInfo.stack.push({ dead: false });
22188
22184
  break;
22189
22185
  }
22190
22186
  case 51:
22191
22187
  case 15:
22192
22188
  case 72:
22193
22189
  if (block.exsucc) {
22194
- liveInLocals.get(block.exsucc)?.forEach((local) => dceInfo.locals.add(local));
22190
+ liveInLocals.get(block.exsucc)?.forEach((local2) => dceInfo.locals.add(local2));
22195
22191
  }
22196
22192
  case 17:
22197
22193
  case 73:
@@ -22221,6 +22217,10 @@ function localDCE(func, context) {
22221
22217
  default:
22222
22218
  unhandledType(bytecode);
22223
22219
  }
22220
+ const local = opReadsLocal(bytecode);
22221
+ if (local != null) {
22222
+ dceInfo.locals.add(local);
22223
+ }
22224
22224
  }
22225
22225
  if (changes) {
22226
22226
  anyChanges = true;
@@ -22480,6 +22480,8 @@ function minimizeLocals2(func, equivSets, context) {
22480
22480
  }
22481
22481
  break;
22482
22482
  }
22483
+ case 14:
22484
+ case 13:
22483
22485
  case 42:
22484
22486
  case 68:
22485
22487
  case 67: {
@@ -22526,6 +22528,8 @@ function computeSplitRanges(func, equivSets) {
22526
22528
  case 70:
22527
22529
  case 42:
22528
22530
  case 18:
22531
+ case 13:
22532
+ case 14:
22529
22533
  recordLocalRead(locals, bc);
22530
22534
  break;
22531
22535
  case 19: {
@@ -23153,13 +23157,13 @@ function doArrayInits(func, liveInState, context) {
23153
23157
  );
23154
23158
  return changes;
23155
23159
  }
23156
- function simpleOpts(func, context) {
23160
+ function simpleOpts(func, _context) {
23157
23161
  const equalsSym = 8388787;
23158
23162
  const logging3 = (0, import_chunk_SG7ODKRM.wouldLog)("optimize", 5);
23159
23163
  return Array.from(func.blocks.values()).reduce((changes, block) => {
23160
23164
  for (let i = block.bytecodes.length; i--; ) {
23161
23165
  const cur = block.bytecodes[i];
23162
- if (cur.op === 0 || cur.op === 1 && cur.arg === 0 || context.config.removeArgc && cur.op === 53) {
23166
+ if (cur.op === 0 || cur.op === 1 && cur.arg === 0) {
23163
23167
  block.bytecodes.splice(i, 1);
23164
23168
  changes = true;
23165
23169
  if (logging3) {
@@ -29142,7 +29146,7 @@ async function generateOneConfig(buildConfig, manifestXML, dependencyFiles, conf
29142
29146
  const opt_time = await (0, import_chunk_SG7ODKRM.first_modified)(
29143
29147
  Object.values(fnMap).map((v) => v.output)
29144
29148
  );
29145
- if (source_time < opt_time && 1713815963058 < opt_time) {
29149
+ if (source_time < opt_time && 1715292882674 < opt_time) {
29146
29150
  return {
29147
29151
  hasTests,
29148
29152
  diagnostics: prevDiagnostics,
@@ -29181,7 +29185,7 @@ async function generateOneConfig(buildConfig, manifestXML, dependencyFiles, conf
29181
29185
  hasTests: hasTests2,
29182
29186
  diagnostics,
29183
29187
  sdkVersion,
29184
- optimizerVersion: "1.1.58",
29188
+ optimizerVersion: "1.1.60",
29185
29189
  ...Object.fromEntries(
29186
29190
  configOptionsToCheck.map((option) => [option, config[option]])
29187
29191
  )
@@ -18,28 +18,28 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var optimizer_exports = {};
20
20
  __export(optimizer_exports, {
21
- StateNodeAttributes: () => import_chunk_XC5IVRTO.StateNodeAttributes,
22
- buildOptimizedProject: () => import_chunk_XC5IVRTO.buildOptimizedProject,
21
+ StateNodeAttributes: () => import_chunk_X2C4HXXZ.StateNodeAttributes,
22
+ buildOptimizedProject: () => import_chunk_X2C4HXXZ.buildOptimizedProject,
23
23
  copyRecursiveAsNeeded: () => import_chunk_SG7ODKRM.copyRecursiveAsNeeded,
24
- defaultConfig: () => import_chunk_XC5IVRTO.defaultConfig,
25
- display: () => import_chunk_XC5IVRTO.display,
26
- generateOneConfig: () => import_chunk_XC5IVRTO.generateOneConfig,
27
- generateOptimizedProject: () => import_chunk_XC5IVRTO.generateOptimizedProject,
28
- getConfig: () => import_chunk_XC5IVRTO.getConfig,
29
- getProjectAnalysis: () => import_chunk_XC5IVRTO.getProjectAnalysis,
30
- get_jungle: () => import_chunk_XC5IVRTO.get_jungle,
31
- isErrorWithLocation: () => import_chunk_XC5IVRTO.isErrorWithLocation,
32
- launchSimulator: () => import_chunk_XC5IVRTO.launchSimulator,
33
- manifestProducts: () => import_chunk_XC5IVRTO.manifestProducts,
34
- mctree: () => import_chunk_XC5IVRTO.mctree,
35
- simulateProgram: () => import_chunk_XC5IVRTO.simulateProgram
24
+ defaultConfig: () => import_chunk_X2C4HXXZ.defaultConfig,
25
+ display: () => import_chunk_X2C4HXXZ.display,
26
+ generateOneConfig: () => import_chunk_X2C4HXXZ.generateOneConfig,
27
+ generateOptimizedProject: () => import_chunk_X2C4HXXZ.generateOptimizedProject,
28
+ getConfig: () => import_chunk_X2C4HXXZ.getConfig,
29
+ getProjectAnalysis: () => import_chunk_X2C4HXXZ.getProjectAnalysis,
30
+ get_jungle: () => import_chunk_X2C4HXXZ.get_jungle,
31
+ isErrorWithLocation: () => import_chunk_X2C4HXXZ.isErrorWithLocation,
32
+ launchSimulator: () => import_chunk_X2C4HXXZ.launchSimulator,
33
+ manifestProducts: () => import_chunk_X2C4HXXZ.manifestProducts,
34
+ mctree: () => import_chunk_X2C4HXXZ.mctree,
35
+ simulateProgram: () => import_chunk_X2C4HXXZ.simulateProgram
36
36
  });
37
37
  module.exports = __toCommonJS(optimizer_exports);
38
- var import_chunk_XC5IVRTO = require("./chunk-XC5IVRTO.cjs");
38
+ var import_chunk_X2C4HXXZ = require("./chunk-X2C4HXXZ.cjs");
39
39
  var import_chunk_SG7ODKRM = require("./chunk-SG7ODKRM.cjs");
40
40
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
41
41
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
42
- (0, import_chunk_XC5IVRTO.init_optimizer)();
42
+ (0, import_chunk_X2C4HXXZ.init_optimizer)();
43
43
  // Annotate the CommonJS export names for ESM import in node:
44
44
  0 && (module.exports = {
45
45
  StateNodeAttributes,
@@ -18,25 +18,25 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var sdk_util_exports = {};
20
20
  __export(sdk_util_exports, {
21
- SectionKinds: () => import_chunk_XC5IVRTO.SectionKinds,
22
- appSupport: () => import_chunk_XC5IVRTO.appSupport,
23
- connectiq: () => import_chunk_XC5IVRTO.connectiq,
24
- getDeviceInfo: () => import_chunk_XC5IVRTO.getDeviceInfo,
25
- getFunctionDocumentation: () => import_chunk_XC5IVRTO.getFunctionDocumentation,
26
- getLanguages: () => import_chunk_XC5IVRTO.getLanguages,
27
- getSdkPath: () => import_chunk_XC5IVRTO.getSdkPath,
28
- isWin: () => import_chunk_XC5IVRTO.isWin,
29
- optimizeProgram: () => import_chunk_XC5IVRTO.optimizeProgram,
30
- readPrg: () => import_chunk_XC5IVRTO.readPrg,
31
- readPrgWithOffsets: () => import_chunk_XC5IVRTO.readPrgWithOffsets,
32
- xmlUtil: () => import_chunk_XC5IVRTO.xml_util_exports
21
+ SectionKinds: () => import_chunk_X2C4HXXZ.SectionKinds,
22
+ appSupport: () => import_chunk_X2C4HXXZ.appSupport,
23
+ connectiq: () => import_chunk_X2C4HXXZ.connectiq,
24
+ getDeviceInfo: () => import_chunk_X2C4HXXZ.getDeviceInfo,
25
+ getFunctionDocumentation: () => import_chunk_X2C4HXXZ.getFunctionDocumentation,
26
+ getLanguages: () => import_chunk_X2C4HXXZ.getLanguages,
27
+ getSdkPath: () => import_chunk_X2C4HXXZ.getSdkPath,
28
+ isWin: () => import_chunk_X2C4HXXZ.isWin,
29
+ optimizeProgram: () => import_chunk_X2C4HXXZ.optimizeProgram,
30
+ readPrg: () => import_chunk_X2C4HXXZ.readPrg,
31
+ readPrgWithOffsets: () => import_chunk_X2C4HXXZ.readPrgWithOffsets,
32
+ xmlUtil: () => import_chunk_X2C4HXXZ.xml_util_exports
33
33
  });
34
34
  module.exports = __toCommonJS(sdk_util_exports);
35
- var import_chunk_XC5IVRTO = require("./chunk-XC5IVRTO.cjs");
35
+ var import_chunk_X2C4HXXZ = require("./chunk-X2C4HXXZ.cjs");
36
36
  var import_chunk_SG7ODKRM = require("./chunk-SG7ODKRM.cjs");
37
37
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
38
38
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
39
- (0, import_chunk_XC5IVRTO.init_sdk_util)();
39
+ (0, import_chunk_X2C4HXXZ.init_sdk_util)();
40
40
  // Annotate the CommonJS export names for ESM import in node:
41
41
  0 && (module.exports = {
42
42
  SectionKinds,
@@ -21,17 +21,17 @@ __export(worker_thread_exports, {
21
21
  default: () => worker_thread_default
22
22
  });
23
23
  module.exports = __toCommonJS(worker_thread_exports);
24
- var import_chunk_XC5IVRTO = require("./chunk-XC5IVRTO.cjs");
24
+ var import_chunk_X2C4HXXZ = require("./chunk-X2C4HXXZ.cjs");
25
25
  var import_chunk_SG7ODKRM = require("./chunk-SG7ODKRM.cjs");
26
26
  var import_chunk_MBTLUWXR = require("./chunk-MBTLUWXR.cjs");
27
27
  var import_chunk_ABYVSU2C = require("./chunk-ABYVSU2C.cjs");
28
28
  var import_node_worker_threads = require("node:worker_threads");
29
29
  var require_worker_thread = (0, import_chunk_ABYVSU2C.__commonJS)({
30
30
  "src/worker-thread.ts"() {
31
- (0, import_chunk_XC5IVRTO.init_worker_task)();
31
+ (0, import_chunk_X2C4HXXZ.init_worker_task)();
32
32
  if (import_node_worker_threads.parentPort) {
33
33
  import_node_worker_threads.parentPort.on("message", async (task) => {
34
- return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_XC5IVRTO.performTask)(task));
34
+ return import_node_worker_threads.parentPort.postMessage(await (0, import_chunk_X2C4HXXZ.performTask)(task));
35
35
  });
36
36
  }
37
37
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@markw65/monkeyc-optimizer",
3
3
  "type": "commonjs",
4
- "version": "1.1.58",
4
+ "version": "1.1.60",
5
5
  "description": "Source to source optimizer for Garmin Monkey C code",
6
6
  "main": "build/optimizer.cjs",
7
7
  "types": "build/src/optimizer.d.ts",