Skip to content

Commit b44ec9e

Browse files
committed
---
yaml --- r: 108394 b: refs/heads/dist-snap c: 03c5342 h: refs/heads/master v: v3
1 parent 3993b00 commit b44ec9e

File tree

29 files changed

+329
-265
lines changed

29 files changed

+329
-265
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ refs/heads/try: f64fdf524a434f0e5cd0bc91d09c144723f3c90d
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
9-
refs/heads/dist-snap: b609d57b02eaf67fcc12a708dca1460bd88bcaab
9+
refs/heads/dist-snap: 03c5342419fe49d060f2ea26f77ae3e716945a90
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1212
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/libextra/enum_set.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ impl<E:CLike> Iterator<E> for Items<E> {
129129
}
130130

131131
fn size_hint(&self) -> (uint, Option<uint>) {
132-
let exact = self.bits.population_count();
132+
let exact = self.bits.count_ones();
133133
(exact, Some(exact))
134134
}
135135
}

branches/dist-snap/src/libextra/test.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -904,15 +904,14 @@ pub fn run_test(force_ignore: bool,
904904
monitor_ch: Chan<MonitorMsg>,
905905
testfn: proc()) {
906906
spawn(proc() {
907-
let mut task = task::task();
908907
let (p, c) = Chan::new();
909908
let mut reader = PortReader::new(p);
910909
let stdout = ChanWriter::new(c.clone());
911910
let stderr = ChanWriter::new(c);
912-
match desc.name {
913-
DynTestName(ref name) => task.name(name.clone()),
914-
StaticTestName(name) => task.name(name),
915-
}
911+
let mut task = task::task().named(match desc.name {
912+
DynTestName(ref name) => name.clone().into_maybe_owned(),
913+
StaticTestName(name) => name.into_maybe_owned(),
914+
});
916915
task.opts.stdout = Some(~stdout as ~Writer);
917916
task.opts.stderr = Some(~stderr as ~Writer);
918917
let result_future = task.future_result();

branches/dist-snap/src/libgreen/task.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,6 @@ impl GreenTask {
175175
opts: TaskOpts,
176176
f: proc()) -> ~GreenTask {
177177
let TaskOpts {
178-
watched: _watched,
179178
notify_chan, name, stack_size,
180179
stderr, stdout, logger,
181180
} = opts;

branches/dist-snap/src/libnative/task.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ pub fn spawn(f: proc()) {
5757
/// inside the task.
5858
pub fn spawn_opts(opts: TaskOpts, f: proc()) {
5959
let TaskOpts {
60-
watched: _watched,
6160
notify_chan, name, stack_size,
6261
logger, stderr, stdout,
6362
} = opts;

branches/dist-snap/src/librustc/lib.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -371,8 +371,7 @@ pub fn monitor(f: proc()) {
371371
#[cfg(not(rtopt))]
372372
static STACK_SIZE: uint = 20000000; // 20MB
373373

374-
let mut task_builder = task::task();
375-
task_builder.name("rustc");
374+
let mut task_builder = task::task().named("rustc");
376375

377376
// FIXME: Hacks on hacks. If the env is trying to override the stack size
378377
// then *don't* set it explicitly.

branches/dist-snap/src/librustc/metadata/creader.rs

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ use syntax::ast;
2424
use syntax::abi;
2525
use syntax::attr;
2626
use syntax::attr::AttrMetaMethods;
27-
use syntax::codemap::{Span, DUMMY_SP};
27+
use syntax::codemap::{Span};
2828
use syntax::diagnostic::SpanHandler;
2929
use syntax::ext::base::{CrateLoader, MacroCrate};
3030
use syntax::parse::token::{IdentInterner, InternedString};
@@ -147,6 +147,7 @@ fn visit_view_item(e: &mut Env, i: &ast::ViewItem) {
147147
match extract_crate_info(i) {
148148
Some(info) => {
149149
let cnum = resolve_crate(e,
150+
None,
150151
info.ident.clone(),
151152
info.name.clone(),
152153
info.version.clone(),
@@ -299,6 +300,7 @@ fn existing_match(e: &Env, name: &str, version: &str, hash: &str) -> Option<ast:
299300
}
300301

301302
fn resolve_crate(e: &mut Env,
303+
root_ident: Option<~str>,
302304
ident: ~str,
303305
name: ~str,
304306
version: ~str,
@@ -319,7 +321,7 @@ fn resolve_crate(e: &mut Env,
319321
};
320322
let loader::Library {
321323
dylib, rlib, metadata
322-
} = load_ctxt.load_library_crate();
324+
} = load_ctxt.load_library_crate(root_ident.clone());
323325

324326
let attrs = decoder::get_crate_attributes(metadata.as_slice());
325327
let crateid = attr::find_crateid(attrs).unwrap();
@@ -338,8 +340,17 @@ fn resolve_crate(e: &mut Env,
338340
}
339341
e.next_crate_num += 1;
340342

343+
// Maintain a reference to the top most crate.
344+
let root_crate = match root_ident {
345+
Some(c) => c,
346+
None => load_ctxt.ident.clone()
347+
};
348+
341349
// Now resolve the crates referenced by this crate
342-
let cnum_map = resolve_crate_deps(e, metadata.as_slice());
350+
let cnum_map = resolve_crate_deps(e,
351+
Some(root_crate),
352+
metadata.as_slice(),
353+
span);
343354

344355
let cmeta = @cstore::crate_metadata {
345356
name: load_ctxt.name,
@@ -364,7 +375,10 @@ fn resolve_crate(e: &mut Env,
364375
}
365376

366377
// Go through the crate metadata and load any crates that it references
367-
fn resolve_crate_deps(e: &mut Env, cdata: &[u8]) -> cstore::cnum_map {
378+
fn resolve_crate_deps(e: &mut Env,
379+
root_ident: Option<~str>,
380+
cdata: &[u8], span : Span)
381+
-> cstore::cnum_map {
368382
debug!("resolving deps of external crate");
369383
// The map from crate numbers in the crate we're resolving to local crate
370384
// numbers
@@ -387,15 +401,13 @@ fn resolve_crate_deps(e: &mut Env, cdata: &[u8]) -> cstore::cnum_map {
387401
None => {
388402
debug!("need to load it");
389403
// This is a new one so we've got to load it
390-
// FIXME (#2404): Need better error reporting than just a bogus
391-
// span.
392-
let fake_span = DUMMY_SP;
393404
let local_cnum = resolve_crate(e,
405+
root_ident.clone(),
394406
cname_str.get().to_str(),
395407
cname_str.get().to_str(),
396408
dep.vers.clone(),
397409
dep.hash.clone(),
398-
fake_span);
410+
span);
399411
cnum_map.insert(extrn_cnum, local_cnum);
400412
}
401413
}
@@ -427,6 +439,7 @@ impl CrateLoader for Loader {
427439
fn load_crate(&mut self, krate: &ast::ViewItem) -> MacroCrate {
428440
let info = extract_crate_info(krate).unwrap();
429441
let cnum = resolve_crate(&mut self.env,
442+
None,
430443
info.ident.clone(),
431444
info.name.clone(),
432445
info.version.clone(),

branches/dist-snap/src/librustc/metadata/loader.rs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,17 @@ pub struct ArchiveMetadata {
6565
}
6666

6767
impl Context {
68-
pub fn load_library_crate(&self) -> Library {
68+
pub fn load_library_crate(&self, root_ident: Option<~str>) -> Library {
6969
match self.find_library_crate() {
7070
Some(t) => t,
7171
None => {
72-
self.sess.span_fatal(self.span,
73-
format!("can't find crate for `{}`",
74-
self.ident));
72+
let message = match root_ident {
73+
None => format!("can't find crate for `{}`", self.ident),
74+
Some(c) => format!("can't find crate for `{}` which `{}` depends on",
75+
self.ident,
76+
c)
77+
};
78+
self.sess.span_fatal(self.span, message);
7579
}
7680
}
7781
}

branches/dist-snap/src/librustc/middle/trans/adt.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -432,7 +432,7 @@ fn generic_type_of(cx: &CrateContext, r: &Repr, name: Option<&str>, sizing: bool
432432
4 => Type::array(&Type::i32(), align_units),
433433
8 if machine::llalign_of_min(cx, Type::i64()) == 8 =>
434434
Type::array(&Type::i64(), align_units),
435-
a if a.population_count() == 1 => Type::array(&Type::vector(&Type::i32(), a / 4),
435+
a if a.count_ones() == 1 => Type::array(&Type::vector(&Type::i32(), a / 4),
436436
align_units),
437437
_ => fail!("unsupported enum alignment: {:?}", align)
438438
};

0 commit comments

Comments
 (0)