@markw65/monkeyc-optimizer 1.0.26 → 1.0.29
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/README.md +38 -0
- package/build/api.cjs +2048 -225
- package/build/optimizer.cjs +1970 -170
- package/build/src/api.d.ts +2 -4
- package/build/src/ast.d.ts +7 -0
- package/build/src/control-flow.d.ts +20 -0
- package/build/src/inliner.d.ts +3 -3
- package/build/src/mc-rewrite.d.ts +1 -1
- package/build/src/optimizer.d.ts +1 -0
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -292,3 +292,41 @@ More fixes found via open source projects.
|
|
|
292
292
|
- Use `self.` rather than `ClassName.` to qualify names that would otherwise collide with locals, since that works with both public and private variables
|
|
293
293
|
- Fix a bug that caused the inliner to fail to qualify certain names, even if there was a collision with an existing local variables
|
|
294
294
|
- Fix some name lookup issues relating to whether the lookup is done as a type or a value.
|
|
295
|
+
|
|
296
|
+
### 1.0.27
|
|
297
|
+
|
|
298
|
+
- Bug fixes
|
|
299
|
+
- Update to `@markw65/prettier-plugin-monkeyc@1.0.29` to fix certain obscure comment related bugs
|
|
300
|
+
- When replacing a node (espcially when inlining), delete any comments contained in the old node.
|
|
301
|
+
|
|
302
|
+
### 1.0.28
|
|
303
|
+
|
|
304
|
+
- Bug fixes
|
|
305
|
+
- In some circumstances, while inlining, a parameter could be substituted, and then reprocessed. During reprocessing, it would attempt to lookup the replacement symbol, and if that was a local from the calling function it would fail (since an inline function never has access to the caller's locals). Prevent the reprocessing step from happening.
|
|
306
|
+
|
|
307
|
+
### 1.0.29
|
|
308
|
+
|
|
309
|
+
- Update to @markw65/prettier-plugin-monkeyc@1.0.32
|
|
310
|
+
|
|
311
|
+
- Fixes a parser issue where `x as Type ? a : b` would be parsed as `(x as Type?) a : b` which would then be reported as a syntax error.
|
|
312
|
+
|
|
313
|
+
- Bug fixes
|
|
314
|
+
|
|
315
|
+
- Fix a bug causing literal nodes to be shared. This was harmless prior to the implementation of the PRE pass
|
|
316
|
+
|
|
317
|
+
- Code cleanup
|
|
318
|
+
|
|
319
|
+
- Add `isStatement` and `isExpression` helpers
|
|
320
|
+
|
|
321
|
+
- New features
|
|
322
|
+
|
|
323
|
+
- Add constant folding for relational and logical operators
|
|
324
|
+
- Allow assignment-scope inlining in variable initializers
|
|
325
|
+
- Better cleanup of unused expressions
|
|
326
|
+
- Add a size based PRE pass. Currently limited to non-local variables, and literals
|
|
327
|
+
|
|
328
|
+
- Testing
|
|
329
|
+
- Ignore case of typeCheckLevel option
|
|
330
|
+
- Actually run the rest of the expected-to-crash tests
|
|
331
|
+
- Better error messages from pragma checker
|
|
332
|
+
- Better regex for filtering projects
|