Skip to content

Commit 7309e87

Browse files
committed
---
yaml --- r: 123679 b: refs/heads/try c: 29b3f29 h: refs/heads/master i: 123677: 0b289b2 123675: 5719cf7 123671: b1cf3df 123663: 7c9ab9a 123647: 92b8802 v: v3
1 parent c8edd51 commit 7309e87

File tree

2 files changed

+21
-28
lines changed

2 files changed

+21
-28
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
refs/heads/master: da4e4e4e0a7778a85748aa4a303b13f603e96b4b
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 8ddd286ea4ba4384a0dc9eae393ed515460a986e
5-
refs/heads/try: 9f94f823b0e6a89b4a210cb077f94919bfc7a118
5+
refs/heads/try: 29b3f2982007daf1c744254314f38f43145e2cd6
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c

branches/try/src/libsyntax/ext/expand.rs

Lines changed: 20 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1454,27 +1454,36 @@ mod test {
14541454
assert!((shouldmatch.len() == 0) ||
14551455
(varrefs.len() > *shouldmatch.iter().max().unwrap()));
14561456
for (idx,varref) in varrefs.iter().enumerate() {
1457+
let print_hygiene_debug_info = || {
1458+
// good lord, you can't make a path with 0 segments, can you?
1459+
let final_varref_ident = match varref.segments.last() {
1460+
Some(pathsegment) => pathsegment.identifier,
1461+
None => fail!("varref with 0 path segments?")
1462+
};
1463+
let varref_name = mtwt::resolve(final_varref_ident);
1464+
let varref_idents : Vec<ast::Ident>
1465+
= varref.segments.iter().map(|s| s.identifier)
1466+
.collect();
1467+
println!("varref #{}: {}, resolves to {}",idx, varref_idents, varref_name);
1468+
let string = token::get_ident(final_varref_ident);
1469+
println!("varref's first segment's string: \"{}\"", string.get());
1470+
println!("binding #{}: {}, resolves to {}",
1471+
binding_idx, *bindings.get(binding_idx), binding_name);
1472+
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1473+
};
14571474
if shouldmatch.contains(&idx) {
14581475
// it should be a path of length 1, and it should
14591476
// be free-identifier=? or bound-identifier=? to the given binding
14601477
assert_eq!(varref.segments.len(),1);
1461-
let varref_name = mtwt::resolve(varref.segments
1462-
.get(0)
1463-
.identifier);
1478+
let varref_name = mtwt::resolve(varref.segments.get(0).identifier);
14641479
let varref_marks = mtwt::marksof(varref.segments
14651480
.get(0)
14661481
.identifier
14671482
.ctxt,
14681483
invalid_name);
14691484
if !(varref_name==binding_name) {
1470-
let varref_idents : Vec<ast::Ident>
1471-
= varref.segments.iter().map(|s|
1472-
s.identifier)
1473-
.collect();
14741485
println!("uh oh, should match but doesn't:");
1475-
println!("varref #{}: {}",idx, varref_idents);
1476-
println!("binding #{}: {}", binding_idx, *bindings.get(binding_idx));
1477-
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1486+
print_hygiene_debug_info();
14781487
}
14791488
assert_eq!(varref_name,binding_name);
14801489
if bound_ident_check {
@@ -1488,27 +1497,11 @@ mod test {
14881497
&& (varref_name == binding_name);
14891498
// temp debugging:
14901499
if fail {
1491-
let varref_idents : Vec<ast::Ident>
1492-
= varref.segments.iter().map(|s|
1493-
s.identifier)
1494-
.collect();
14951500
println!("failure on test {}",test_idx);
14961501
println!("text of test case: \"{}\"", teststr);
14971502
println!("");
14981503
println!("uh oh, matches but shouldn't:");
1499-
println!("varref #{}: {}, resolves to {}",idx, varref_idents,
1500-
varref_name);
1501-
// good lord, you can't make a path with 0 segments, can you?
1502-
let string = token::get_ident(varref.segments
1503-
.get(0)
1504-
.identifier);
1505-
println!("varref's first segment's uint: {}, and string: \"{}\"",
1506-
varref.segments.get(0).identifier.name,
1507-
string.get());
1508-
println!("binding #{}: {}, resolves to {}",
1509-
binding_idx, *bindings.get(binding_idx),
1510-
binding_name);
1511-
mtwt::with_sctable(|x| mtwt::display_sctable(x));
1504+
print_hygiene_debug_info();
15121505
}
15131506
assert!(!fail);
15141507
}

0 commit comments

Comments
 (0)