Falcon 0.9.1.2 Crane-dev release
这是对于0.9.1的一个紧急修复发布版本。它修复了一些0.9.2版本定稿的这段时间里相关bug。
Changelog
Falcon (0.9.1.2)
* fixed: Correct parsing of octal number (0 and 7 was out...)
* fixed: Crash with statements == just numbers, and allowing interactive
compiler to parse non-stand alone expressions and evaluate them.
* fixed: A leftover from version 0.8.14 caused tables not to properly mark
their contents on garbage collection.
* fixed: More flexible int() and numeric() functions (thanks Kless).
* minor: Added functions vmModuleName, vmModulePath and vmRelativePath to
help solving dynamic dependencies.
* fixed: [DANGER]: Fixed missing GC marking of items in frame stacks (mainly
self and binding registers). This was in since 0.8.0; it was less
evident because 0.8 had sender which cached the last minus one
self objects, saving at least the previous caller, and it was
unlikely that the nth-2 caller wasn't cached somewhere else in the
VM.
* fixed: include() was using a cached pointer variable to create the error
message; the VM stack may have been (usually is) dirtied, so the
pointer was invalidated. This could have caused random crashes
and errors in reporting the failing module name.
* fixed: Finetuned module loader error reporting (now it indicates the module
whose dependency wasn't found).
* fixed: Some functional selectors (any & c) still returned 0 on false and 1
on true.
* minor: String.merge() now accepts only an array as parameters, and works
as String.join() does with its parameters.
* fixed: Const atoms din't include negative numbers (i.e. negative numbers
couldn't be used in enum declarations).
* fixed: Reporting a consistent error when aliasing different modules to the
same namespace.
* fxied: Now the VM correctly lets imported undefined symbols not being
part of namespaces to generate a proper error.
Feathers (0.9.1.2)
* fixed: In MXML, removed promotion of data nodes when there are
other sibling nodes.