HSPで久々に嵌りました。
外部DLLの命令を使う関数群をモジュール化して使っていたのですが、
プログラムを修正した時に急に命令が実行できなくなりました。
エラーの内容は「error 2 : 文法が間違っています」ですが、エラー箇所はいじってないんですよね。
なのにエラーになると。
原因が全く分からなかったので、仕方なくエラーが出ない(ちゃんと動く)状態から、
少し修正しては実行し、を繰り返していくとある所から急にエラーが出るようになりました。
ある関数を呼び出さなくなった途端エラーになったので命令を追っていくと、
くだんのモジュールの #deffunc で定義した命令でした。
そのモジュールでは他に #deffunc している箇所はなく、
#func / #cfunc で定義したAPI呼び出し命令を呼んでいました。
なので、そのモジュールを利用する場合必ず呼ぶ命令を #deffunc 経由にしたところ、
エラーが出ずに実行出来るようになりました。
使うのが #func / #cfunc 命令だけだと、関数の参照が解決出来ないんでしょうかね?
(当然のことながら #func / #cfunc は global にして呼び出していましたよ?)
2時間ぐらい解決に悩んでしまいました。とほほ