Support old rustc
diff --git a/src/data.rs b/src/data.rs
index 3b90b1f..c1ae79c 100644
--- a/src/data.rs
+++ b/src/data.rs
@@ -57,6 +57,7 @@
     #[cfg(feature = "full")]
     use ConstExpr;
     use attr::parsing::outer_attr;
+    #[cfg(feature = "full")]
     use constant::parsing::const_expr;
     #[cfg(feature = "full")]
     use expr::parsing::expr;
@@ -113,7 +114,7 @@
     ));
 
     #[cfg(not(feature = "full"))]
-    use self::const_expr as discriminant;
+    use constant::parsing::const_expr as discriminant;
 
     #[cfg(feature = "full")]
     named!(discriminant -> ConstExpr, alt!(
diff --git a/src/ty.rs b/src/ty.rs
index efc5cca..6a84a2b 100644
--- a/src/ty.rs
+++ b/src/ty.rs
@@ -234,6 +234,7 @@
     use {TyParamBound, TraitBoundModifier};
     #[cfg(feature = "full")]
     use ConstExpr;
+    #[cfg(feature = "full")]
     use constant::parsing::const_expr;
     #[cfg(feature = "full")]
     use expr::parsing::expr;
@@ -288,7 +289,7 @@
     ));
 
     #[cfg(not(feature = "full"))]
-    use self::const_expr as array_len;
+    use constant::parsing::const_expr as array_len;
 
     #[cfg(feature = "full")]
     named!(array_len -> ConstExpr, alt!(