summary refs log tree commit diff
path: root/src/rustc/rustc.rc
blob: 8184f60c11f28a7e301bdfa1625a057b2803d7f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
// -*- rust -*-

#[link(name = "rustc",
       vers = "0.3",
       uuid = "0ce89b41-2f92-459e-bbc1-8f5fe32f16cf",
       url = "https://github.com/mozilla/rust/tree/master/src/rustc")];

#[comment = "The Rust compiler"];
#[license = "MIT"];
#[crate_type = "lib"];

#[no_core];

#[warn(no_vecs_not_implicitly_copyable)];

use core(vers = "0.3");
use std(vers = "0.3");
use syntax(vers = "0.3");

import core::*;

/*
Alternate names for some modules.

I am using this to help extract metadata into its own crate. In metadata.rs
it redefines all these modules in order to gate access from metadata to the
rest of the compiler, then uses these to access the original implementation.
*/
import util_ = util;
import lib_ = lib;
import driver_ = driver;
import middle_ = middle;
import back_ = back;

mod middle {
    mod trans {
        mod common;
        mod type_of;
        mod build;
        mod base;
        mod alt;
        mod uniq;
        mod closure;
        mod tvec;
        mod impl;
        mod foreign;
        mod reflect;
        mod shape;
        mod debuginfo;
        mod type_use;
        mod reachable;
    }
    mod ty;
    mod resolve;
    mod resolve3;
    mod typeck {
        mod check {
            mod alt;
            mod vtable;
            mod writeback;
            mod regionmanip;
            mod regionck;
            mod demand;
            mod method;
        }
        mod rscope;
        mod astconv;
        mod infer;
        mod collect;
    }
    mod check_loop;
    mod check_alt;
    mod check_const;
    mod lint;
    mod borrowck {
        mod check_loans;
        mod gather_loans;
        mod categorization;
        mod loan;
        mod preserve;
    }
    mod liveness;
    mod block_use;
    mod kind;
    mod freevars;
    mod capture;
    mod pat_util;
    mod region;
    mod const_eval;
    mod astencode;

    mod tstate {
        mod ck;
        mod annotate;
        #[path = "auxiliary.rs"]
        mod aux;
        mod bitvectors;
        mod collect_locals;
        mod pre_post_conditions;
        mod states;
        mod ann;
        mod tritv;
    }
}

mod front {
    mod config;
    mod test;
    mod core_inject;
    mod intrinsic_inject;
}

mod back {
    mod link;
    mod abi;
    mod upcall;
    mod x86;
    mod x86_64;
    mod rpath;
    mod target_strs;
}

mod metadata {
    export encoder;
    export creader;
    export cstore;
    export csearch;
    export common;
    export decoder;
    export tyencode;
    export tydecode;
    export loader;
    export filesearch;

    mod common;
    mod tyencode;
    mod tydecode;
    mod encoder;
    mod decoder;
    mod creader;
    mod cstore;
    mod csearch;
    mod loader;
    mod filesearch;
}

mod driver {
    mod driver;
    mod session;
}

mod util {
    mod common;
    mod ppaux;
}

mod lib {
    mod llvm;
}

// Local Variables:
// fill-column: 78;
// indent-tabs-mode: nil
// c-basic-offset: 4
// buffer-file-coding-system: utf-8-unix
// End: