4

バイトコードのある部分から元のコード行に移動するためのフォーマットまたはライブラリの優れた機能はありますか? これは明らかに、デバッグやエラー メッセージに役立ちます。

特に、ソース マップのサポートをjs_of_ocamlに追加することがどれほど難しいかを調べています。

4

2 に答える 2

7

デバッグ情報を有効にしてコンパイルすると (オプション-g)、バイトコードは、ソースの場所と入力情報を提供する、関数のエントリ ポイントとリターン ポイントなどをマークする、いわゆる「イベント」構造を持ちます。

この情報を検査する方法の概念実証として、バイトコード命令と一緒にこのデバッグ情報を出力するocamlppツール (バイトコード ファイルを検査するための Benoît Vaugon による小さなユーティリティ)の小さなブランチを作成しました。

js_of_ocamlコンパイル プロセス全体でこの位置情報を保持するために必要な手順を実行するかどうかはわかりません。詳細については、メンテナの Jérôme Vouillon に問い合わせてください。

于 2013-06-16T06:42:17.540 に答える
3

js_of_ocaml -debuginfoバイトコードで使用debug_eventして、コード行をコメントに書き込みます。

于 2013-06-17T03:25:23.317 に答える