@markw65/monkeyc-optimizer 1.0.20 → 1.0.23
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 +40 -0
- package/build/api.cjs +770 -286
- package/build/optimizer.cjs +552 -201
- package/build/src/api.d.ts +7 -3
- package/build/src/ast.d.ts +2 -0
- package/build/src/inliner.d.ts +1 -5
- package/build/src/mc-rewrite.d.ts +4 -4
- package/build/src/optimizer.d.ts +29 -11
- package/build/src/pragma-checker.d.ts +1 -1
- package/build/src/util.d.ts +1 -0
- package/build/src/visitor.d.ts +2 -0
- package/build/util.cjs +10 -4
- package/package.json +9 -4
package/README.md
CHANGED
|
@@ -235,3 +235,43 @@ More fixes found via open source projects.
|
|
|
235
235
|
|
|
236
236
|
- Code cleanup
|
|
237
237
|
- Called function cleanup
|
|
238
|
+
|
|
239
|
+
### 1.0.21
|
|
240
|
+
|
|
241
|
+
- Bug fixes
|
|
242
|
+
|
|
243
|
+
- Parameters from the calling function should be treated just line locals when inlining
|
|
244
|
+
- Upgrade to @markw65/prettier-plugin-monkeyc@1.0.24
|
|
245
|
+
- fixes crash with comments following an attribute: `(:foo) /* comment */ function foo() {}`
|
|
246
|
+
- Fix issues with recursive inlining
|
|
247
|
+
|
|
248
|
+
### 1.0.22
|
|
249
|
+
|
|
250
|
+
- Improvements
|
|
251
|
+
|
|
252
|
+
- Major rewrite of the symbol lookup mechanism, to match monkeyc as closely as possible
|
|
253
|
+
|
|
254
|
+
- Fix callee lookup to skip local variables
|
|
255
|
+
- Fix class lookup to first check all the super classes, then to check the context of each super class
|
|
256
|
+
- Fix module lookup to check both the module, and the context of the module
|
|
257
|
+
- Inject class and module names into themselves. So that Graphics.Graphics.COLOR_RED works.
|
|
258
|
+
|
|
259
|
+
- Add live diagnostics for missing symbols
|
|
260
|
+
|
|
261
|
+
- Bug fixes
|
|
262
|
+
|
|
263
|
+
- Recognize the the variable in a catch clause is a declaration
|
|
264
|
+
|
|
265
|
+
- Breaking change
|
|
266
|
+
- By popular demand, reversed the sense of `inline*foo`, so now it inlines when foo is _not_ declared as an excludeAnnotation
|
|
267
|
+
|
|
268
|
+
### 1.0.23
|
|
269
|
+
|
|
270
|
+
- Bug Fixes
|
|
271
|
+
|
|
272
|
+
- Don't treat parameters to Method types as undeclared variables
|
|
273
|
+
- eg `var x as (Method(a as Number, b as Number) as Void)` should not report that `a` and `b` are undeclared
|
|
274
|
+
|
|
275
|
+
- Tests
|
|
276
|
+
- Various new tests for module/class/local resolution of symbols
|
|
277
|
+
- Make tests fail by default if the optimizer reports any undefined symbols, and add `@expects` or `checkInvalidSymbols=WARNING` as needed to prevent test failures.
|