タグ

ブックマーク / qiita.com/h_sakurai (1)

  • Rust0.11で作るLLVMコンパイラ - Qiita

    はじめに 以前、Rust0.7でコンパイラを作成してみたのですが、Rust0.11までバージョンが上がり、動かなくなってしまいました。開発中の言語の変更なので仕方ないのですが、Rustを参考にしたいのに、使い方が良くわからないと困るのでRust0.11に対応してみました。 エラーワーニング対策 マクロ、use,EAddという大文字で始まる関数を許可する為に以下のアトリビュートを使います。 #![feature(macro_rules)] #![feature(globs)] #![allow(non_snake_case_functions)] メイン関数 以前、~aと書いていた、~はboxと書くようになりました。boxと書くとヒープに値を取り、ポインタを持つようになります。 println!は出力マクロですが、{}に引数を展開します。 interp::evalがインタプリタで、virtu

    Rust0.11で作るLLVMコンパイラ - Qiita
    mizchi
    mizchi 2014/11/09
  • 1