我正在编写一个在 MacOS 7.x - 9.x 上运行的小应用程序(使用 Macintosh Toolbox),我决定包含 Duktape。
我使用在 MacOS 9 上运行的 CodeWarrior 6.0。
我使用低内存配置,在此处找到。
当我为 PPC 编译时,它运行完美——但是当我为 68k 编译时,我得到了很多奇怪的行为和崩溃。
例如,如果我要调用duk_peval_string
以下内容:
var i = 3;
<- 没有错误
var i = 3; function a() { return 4; }
<- 没有错误
var i = 3; function a() { return 4; } i = a();
<-- "ReferenceError: -4e+0"
function a() { return 4; } i = a();
<-- 启动时崩溃
我已启用自测 ( DUK_USE_SELF_TESTS
) 以尝试找出可能发生的情况 - 在处理器设置下启用8-Byte Doubles
和更改Struct Alignment
to PowerPC
(而不是 68K 设置)会导致 Duktape 通过测试 - 但它仍然无法解决问题.
定义__m68k__
(或不定义)似乎不会影响任何事情。
我知道这是一个很长的机会,但是在花了大约 4 个小时更改了我在 IDE 和 duk_config 上可以找到的几乎所有设置之后,我没有想法 - 所以任何帮助将不胜感激。