Skip to content

Commit 58d288a

Browse files
committed
Move used_link_args from session to cstore
1 parent 4bfa269 commit 58d288a

File tree

4 files changed

+12
-10
lines changed

4 files changed

+12
-10
lines changed

src/comp/driver/rustc.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -355,7 +355,7 @@ fn build_session(@session::options sopts) -> session::session {
355355
auto target_cfg = build_target_config();
356356
auto cstore = cstore::mk_cstore();
357357
ret session::session(target_cfg, sopts, cstore,
358-
[], codemap::new_codemap(), 0u);
358+
codemap::new_codemap(), 0u);
359359
}
360360

361361
fn parse_pretty(session::session sess, &str name) -> pp_mode {
@@ -527,7 +527,7 @@ fn main(vec[str] args) {
527527
gcc_args += ["-l" + libarg];
528528
}
529529

530-
gcc_args += sess.get_used_link_args();
530+
gcc_args += cstore::get_used_link_args(cstore);
531531
auto used_libs = cstore::get_used_libraries(cstore);
532532
for (str l in used_libs) {
533533
gcc_args += ["-l" + l];

src/comp/driver/session.rs

-7
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ type crate_metadata = rec(str name, vec[u8] data);
4646
obj session(@config targ_cfg,
4747
@options opts,
4848
metadata::cstore::cstore cstore,
49-
mutable vec[str] used_link_args,
5049
codemap::codemap cm,
5150
mutable uint err_count) {
5251
fn get_targ_cfg() -> @config { ret targ_cfg; }
@@ -98,12 +97,6 @@ obj session(@config targ_cfg,
9897
self.span_bug(sp, "unimplemented " + msg);
9998
}
10099
fn unimpl(str msg) -> ! { self.bug("unimplemented " + msg); }
101-
fn add_used_link_args(&str args) {
102-
used_link_args += str::split(args, ' ' as u8);
103-
}
104-
fn get_used_link_args() -> vec[str] {
105-
ret used_link_args;
106-
}
107100
fn get_codemap() -> codemap::codemap { ret cm; }
108101
fn lookup_pos(uint pos) -> codemap::loc {
109102
ret codemap::lookup_pos(cm, pos);

src/comp/metadata/creader.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ fn visit_item(env e, &@ast::item i) {
188188
attr::find_attrs_by_name(i.attrs, "link_args")) {
189189
alt (attr::get_meta_item_value_str(attr::attr_meta(a))) {
190190
case (some(?linkarg)) {
191-
e.sess.add_used_link_args(linkarg);
191+
cstore::add_used_link_args(cstore, linkarg);
192192
}
193193
case (none) { /* fallthrough */ }
194194
}

src/comp/metadata/cstore.rs

+9
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import std::map;
22
import std::vec;
3+
import std::str;
34

45
type crate_metadata = rec(str name, vec[u8] data);
56

@@ -53,6 +54,14 @@ fn get_used_libraries(&cstore cstore) -> vec[str] {
5354
ret cstore.used_libraries;
5455
}
5556

57+
fn add_used_link_args(&cstore cstore, &str args) {
58+
cstore.used_link_args += str::split(args, ' ' as u8);
59+
}
60+
61+
fn get_used_link_args(&cstore cstore) -> vec[str] {
62+
ret cstore.used_link_args;
63+
}
64+
5665
// Local Variables:
5766
// mode: rust
5867
// fill-column: 78;

0 commit comments

Comments
 (0)