Support path as array length

Fixes #29.
diff --git a/src/expr.rs b/src/expr.rs
index 821e264..20e0555 100644
--- a/src/expr.rs
+++ b/src/expr.rs
@@ -352,11 +352,13 @@
 
     named!(pub expr -> Expr, do_parse!(
         mut e: alt!(
-            expr_lit // needs to be before expr_struct
+            expr_lit // must be before expr_struct
             |
-            expr_struct // needs to be before expr_path
+            expr_struct // must be before expr_path
             |
-            expr_paren // needs to be before expr_tup
+            expr_paren // must be before expr_tup
+            |
+            expr_mac // must be before expr_path
             |
             expr_box
             |
@@ -390,8 +392,6 @@
             |
             expr_ret
             |
-            expr_mac
-            |
             expr_repeat
         ) >>
         many0!(alt!(