aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRafael Avila de Espindola <espindola@dream.(none)>2011-02-07 14:57:34 -0500
committerRafael Avila de Espindola <espindola@dream.(none)>2011-02-07 14:57:34 -0500
commitff6864aa5ca14795ae0e23e97e0e67b1122a6b68 (patch)
treeafb5e62fdf61b4333f9c139bb19b0c95eba65af4 /src
parentAdd support for (diff)
downloadrust-ff6864aa5ca14795ae0e23e97e0e67b1122a6b68.tar.xz
rust-ff6864aa5ca14795ae0e23e97e0e67b1122a6b68.zip
Fix expressions with paths with more than one element.
Diffstat (limited to 'src')
-rw-r--r--src/comp/middle/resolve.rs3
-rw-r--r--src/test/run-pass/path.rs8
2 files changed, 9 insertions, 2 deletions
diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs
index 2cfbcc83..97a52284 100644
--- a/src/comp/middle/resolve.rs
+++ b/src/comp/middle/resolve.rs
@@ -432,8 +432,7 @@ fn fold_expr_path(&env e, &span sp, &ast.path p, &option.t[def] d,
path_len = n_idents - remaining + 1u;
}
case (def_wrap_other(_)) {
- check (n_idents == 1u);
- path_len = 1u;
+ path_len = n_idents;
}
case (def_wrap_mod(?m)) {
e.sess.span_err(sp,
diff --git a/src/test/run-pass/path.rs b/src/test/run-pass/path.rs
new file mode 100644
index 00000000..e94d32eb
--- /dev/null
+++ b/src/test/run-pass/path.rs
@@ -0,0 +1,8 @@
+mod foo {
+ fn bar(uint offset) {
+ }
+}
+
+fn main(vec[str] args) {
+ foo.bar(0u);
+}