Slide 11
Slide 11 text
あたりのつけ方: ログ・トレース・Print デバッグ・Grep
scalac に -Xprint:{PHASE}{,PHASE}*
を渡せば指定したコンパイラフェーズの後の AST
を確認できる.
また、 -Ylog:{PHASE}{,PHASE}*
を渡せば指定したフェーズのログを有効化できる....がこ
れはあまりいい感じのログを出してくれないのでダメそうなら素直に print
デバッグを仕
込もう
import dotty.tools.dotc.core.Decorators.*
でちょっとリッチな string interpolation
が使える.
ちなみに scalac をグローバルにインストールしていなくても大丈夫. dotty のコードベースの
sbt シェルから scalac を直接呼び出すことができる
エラーメッセージで dotty のソースを grep するのも手.