2011-03-04T19:02:51+09:00

Mac OS X 10.6 の osacompile コマンドの不具合

何はともあれ、次の AppleScript をテキストファイルとして保存し、Mac OS X 10.6 の osacompile コマンドでコンパイルしてみて欲しい。

script A
end script

on initialize()
get aprop of A
end initialize

property init : initialize()

なにもエラーが起きずにコンパイルできちゃう。でも、上のスクリプトはコンパイルできちゃいけないんだ。コンパイルの時点で、script object の存在しない property にアクセスしようとしているので、エラーが起きなきゃ行けない。実際、AppleScript Editor とか、Mac OS X 10.6 の osacompile 以外でコンパイルするときっちりエラーが起きる。

osacompile のバグでしょう。

まあ、コンパイルの時点でこんな事をやるのは変わっているかもしれないけど、この不具合のお陰で ModuleLoader を使って、Mac OS X 10.6 の Xcode でAppleScript をコンパイルするとエラーが起きる。AppleScript エディタ/スクリプトエディタでコンパイルするとちゃんとエラーが起きてくれる。

やっぱ、Mac OS X 10.6 の osacompile のバグだと思うのだけで。異論をお待ちしています。いちおう、bug reporter に報告したけど、どうなる事やら。

未だ、Mac OS X 10.6 を常用していないので気付かなかった。乗り換えるのもめんどくさいけど、そのうち Mac OS X 10.7 Lion が出ちゃうな。どうしたものか。