]> git.proxmox.com Git - rustc.git/blame - src/librustc_trans/lib.rs
Imported Upstream version 1.3.0+dfsg1
[rustc.git] / src / librustc_trans / lib.rs
CommitLineData
1a4d82fc
JJ
1// Copyright 2012-2013 The Rust Project Developers. See the COPYRIGHT
2// file at the top-level directory of this distribution and at
3// http://rust-lang.org/COPYRIGHT.
4//
5// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8// option. This file may not be copied, modified, or distributed
9// except according to those terms.
10
11//! The Rust compiler.
12//!
13//! # Note
14//!
15//! This API is completely unstable and subject to change.
16
c34b1796
AL
17// Do not remove on snapshot creation. Needed for bootstrap. (Issue #22364)
18#![cfg_attr(stage0, feature(custom_attribute))]
1a4d82fc 19#![crate_name = "rustc_trans"]
85aaf69f 20#![unstable(feature = "rustc_private")]
1a4d82fc
JJ
21#![staged_api]
22#![crate_type = "dylib"]
23#![crate_type = "rlib"]
24#![doc(html_logo_url = "http://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
62682a34 25 html_favicon_url = "https://doc.rust-lang.org/favicon.ico",
1a4d82fc
JJ
26 html_root_url = "http://doc.rust-lang.org/nightly/")]
27
85aaf69f 28#![feature(box_patterns)]
1a4d82fc 29#![feature(box_syntax)]
62682a34
SL
30#![feature(const_fn)]
31#![feature(iter_cmp)]
32#![feature(iter_arith)]
85aaf69f 33#![feature(libc)]
62682a34
SL
34#![feature(path_ext)]
35#![feature(path_ext)]
36#![feature(path_relative_from)]
37#![feature(path_relative_from)]
85aaf69f 38#![feature(quote)]
62682a34 39#![feature(rc_weak)]
1a4d82fc 40#![feature(rustc_diagnostic_macros)]
85aaf69f 41#![feature(rustc_private)]
85aaf69f 42#![feature(staged_api)]
85aaf69f 43#![feature(unicode)]
62682a34
SL
44#![feature(unicode)]
45#![feature(vec_push_all)]
c34b1796
AL
46
47#![allow(trivial_casts)]
1a4d82fc
JJ
48
49extern crate arena;
50extern crate flate;
51extern crate getopts;
52extern crate graphviz;
53extern crate libc;
54extern crate rustc;
55extern crate rustc_back;
c34b1796 56extern crate rustc_llvm as llvm;
c1a9b12d 57extern crate serialize;
1a4d82fc
JJ
58
59#[macro_use] extern crate log;
60#[macro_use] extern crate syntax;
61
62pub use rustc::session;
63pub use rustc::metadata;
64pub use rustc::middle;
65pub use rustc::lint;
66pub use rustc::plugin;
67pub use rustc::util;
68
69pub mod back {
70 pub use rustc_back::abi;
1a4d82fc
JJ
71 pub use rustc_back::rpath;
72 pub use rustc_back::svh;
1a4d82fc 73
c1a9b12d 74 pub mod archive;
62682a34 75 pub mod linker;
1a4d82fc
JJ
76 pub mod link;
77 pub mod lto;
78 pub mod write;
c1a9b12d 79 pub mod msvc;
1a4d82fc
JJ
80}
81
82pub mod trans;
83pub mod save;
84
85pub mod lib {
86 pub use llvm;
87}