The parser needs to parse unconfigured items into the AST so that they can make the round trip back through the pretty printer, but subsequent passes shouldn't care about items not being translated. Running a fold pass after parsing is the lowest-impact way to make this work. The performance seems fine. Issue #489
110 lines
1.7 KiB
Rust
110 lines
1.7 KiB
Rust
|
|
// -*- rust -*-
|
|
|
|
#[link(name = "rustc",
|
|
vers = "0.1",
|
|
uuid = "0ce89b41-2f92-459e-bbc1-8f5fe32f16cf",
|
|
url = "http://rust-lang.org/src/rustc")];
|
|
|
|
#[desc = "The Rust compiler"];
|
|
#[license = "BSD"];
|
|
|
|
|
|
use std (name = "std",
|
|
vers = "0.1",
|
|
url = "http://rust-lang.org/src/std");
|
|
|
|
mod middle {
|
|
mod trans;
|
|
mod ty;
|
|
mod walk;
|
|
mod visit;
|
|
mod ast_map;
|
|
mod resolve;
|
|
mod typeck;
|
|
mod alias;
|
|
|
|
mod tstate {
|
|
mod ck;
|
|
mod annotate;
|
|
mod aux = "auxiliary.rs";
|
|
mod bitvectors;
|
|
mod collect_locals;
|
|
mod pre_post_conditions;
|
|
mod states;
|
|
mod ann;
|
|
mod tritv;
|
|
}
|
|
}
|
|
|
|
|
|
mod pretty {
|
|
mod pprust;
|
|
mod pp;
|
|
mod ppaux;
|
|
}
|
|
|
|
mod front {
|
|
mod ast;
|
|
mod attr;
|
|
mod ext;
|
|
mod extfmt;
|
|
mod extenv;
|
|
mod extsimplext;
|
|
mod fold;
|
|
mod codemap;
|
|
mod lexer;
|
|
mod parser;
|
|
mod token;
|
|
mod eval;
|
|
mod config;
|
|
}
|
|
|
|
mod back {
|
|
mod link;
|
|
mod abi;
|
|
mod upcall;
|
|
mod x86;
|
|
}
|
|
|
|
mod metadata {
|
|
export tyencode;
|
|
export encoder;
|
|
export decoder;
|
|
export creader;
|
|
|
|
mod tags;
|
|
mod tyencode;
|
|
mod tydecode;
|
|
mod encoder;
|
|
mod decoder;
|
|
mod creader;
|
|
}
|
|
|
|
mod driver {
|
|
mod rustc;
|
|
mod session;
|
|
}
|
|
|
|
mod util {
|
|
mod common;
|
|
mod data;
|
|
}
|
|
|
|
auth front::creader::load_crate = unsafe;
|
|
auth front::creader::get_metadata_section = unsafe;
|
|
auth middle::metadata = unsafe;
|
|
auth middle::trans = unsafe;
|
|
auth lib::llvm = unsafe;
|
|
|
|
mod lib {
|
|
mod llvm;
|
|
}
|
|
|
|
// Local Variables:
|
|
// fill-column: 78;
|
|
// indent-tabs-mode: nil
|
|
// c-basic-offset: 4
|
|
// buffer-file-coding-system: utf-8-unix
|
|
// compile-command: "make -k -C $RBUILD 2>&1 | sed -e 's/\\/x\\//x:\\//g'";
|
|
// End:
|