SBCL、CL-OPENGL、および Lispbuilder-SDL を使用して単純なゲームを作成しているときに、奇妙なエラーが発生することがあります。ゲームが動作するようになった直後に、すべてのデバッグ作業 (print ステートメントなど) を一掃することにしました。私はそうしましたが、後でゲームを実行すると、「中止されました」というメッセージが表示され、Lisp プロセス全体が停止しました。他のエラー メッセージもデバッガーのプロンプトも表示されませんでした。print ステートメントを使用して、問題を gl:translate の呼び出しに切り分けることができました。奇妙なことに、その行の前に break ステートメントを置いてシングルステップを実行しようとすると、エラーは発生せず、コードは正常に実行されます。ほとんど競合状態のようですが、スレッドは使用していません。何か案は?
編集: gl:translate への呼び出しは問題ではないようです。次のようなことをすると:
(print 'first)
(print 'second)
(gl:translate ...)
出力を取得します
FIRST
Aborted
私が言ったように、私はスレッドを使用していません。
編集 2:CLisp で動作します。
編集 3: 気にしないでください。