diff --git a/src/derive.rs b/src/derive.rs
index a007c03..5d92a10 100644
--- a/src/derive.rs
+++ b/src/derive.rs
@@ -98,29 +98,29 @@
         }
     }
 
-    named!(struct_body -> (WhereClause, VariantData, Option<Token![;]>), alt!(
+    named!(struct_body -> (Option<WhereClause>, VariantData, Option<Token![;]>), alt!(
         do_parse!(
-            wh: syn!(WhereClause) >>
+            wh: option!(syn!(WhereClause)) >>
             body: struct_like_body >>
             (wh, VariantData::Struct(body.0, body.1), None)
         )
         |
         do_parse!(
             body: tuple_like_body >>
-            wh: syn!(WhereClause) >>
+            wh: option!(syn!(WhereClause)) >>
             semi: punct!(;) >>
             (wh, VariantData::Tuple(body.0, body.1), Some(semi))
         )
         |
         do_parse!(
-            wh: syn!(WhereClause) >>
+            wh: option!(syn!(WhereClause)) >>
             semi: punct!(;) >>
             (wh, VariantData::Unit, Some(semi))
         )
     ));
 
-    named!(enum_body -> (WhereClause, Delimited<Variant, Token![,]>, token::Brace), do_parse!(
-        wh: syn!(WhereClause) >>
+    named!(enum_body -> (Option<WhereClause>, Delimited<Variant, Token![,]>, token::Brace), do_parse!(
+        wh: option!(syn!(WhereClause)) >>
         data: braces!(Delimited::parse_terminated) >>
         (wh, data.0, data.1)
     ));
diff --git a/src/gen/fold.rs b/src/gen/fold.rs
index 7b976d7..b7165ef 100644
--- a/src/gen/fold.rs
+++ b/src/gen/fold.rs
@@ -1518,7 +1518,7 @@
         lt_token: _i . lt_token,
         params: FoldHelper::lift(_i . params, |it| { _visitor.fold_generic_param(it) }),
         gt_token: _i . gt_token,
-        where_clause: _visitor.fold_where_clause(_i . where_clause),
+        where_clause: (_i . where_clause).map(|it| { _visitor.fold_where_clause(it) }),
     }
 }
 
diff --git a/src/gen/visit.rs b/src/gen/visit.rs
index ead15c9..ca2b407 100644
--- a/src/gen/visit.rs
+++ b/src/gen/visit.rs
@@ -1183,7 +1183,7 @@
     // Skipped field _i . lt_token;
     for el in & _i . params { let it = el.item(); _visitor.visit_generic_param(it) };
     // Skipped field _i . gt_token;
-    _visitor.visit_where_clause(& _i . where_clause);
+    if let Some(ref it) = _i . where_clause { _visitor.visit_where_clause(it) };
 }
 
 pub fn visit_ident<'ast, V: Visitor<'ast> + ?Sized>(_visitor: &mut V, _i: &'ast Ident) {
diff --git a/src/gen/visit_mut.rs b/src/gen/visit_mut.rs
index 38cc19e..2dae4a7 100644
--- a/src/gen/visit_mut.rs
+++ b/src/gen/visit_mut.rs
@@ -1183,7 +1183,7 @@
     // Skipped field _i . lt_token;
     for mut el in & mut _i . params { let it = el.item_mut(); _visitor.visit_generic_param_mut(it) };
     // Skipped field _i . gt_token;
-    _visitor.visit_where_clause_mut(& mut _i . where_clause);
+    if let Some(ref mut it) = _i . where_clause { _visitor.visit_where_clause_mut(it) };
 }
 
 pub fn visit_ident_mut<V: VisitorMut + ?Sized>(_visitor: &mut V, _i: &mut Ident) {
diff --git a/src/generics.rs b/src/generics.rs
index 706aace..970428b 100644
--- a/src/generics.rs
+++ b/src/generics.rs
@@ -9,7 +9,7 @@
         pub lt_token: Option<Token![<]>,
         pub params: Delimited<GenericParam, Token![,]>,
         pub gt_token: Option<Token![>]>,
-        pub where_clause: WhereClause,
+        pub where_clause: Option<WhereClause>,
     }
 }
 
@@ -83,8 +83,8 @@
     /// # ;
     /// # }
     /// ```
-    pub fn split_for_impl(&self) -> (ImplGenerics, TypeGenerics, &WhereClause) {
-        (ImplGenerics(self), TypeGenerics(self), &self.where_clause)
+    pub fn split_for_impl(&self) -> (ImplGenerics, TypeGenerics, Option<&WhereClause>) {
+        (ImplGenerics(self), TypeGenerics(self), self.where_clause.as_ref())
     }
 }
 
@@ -154,19 +154,12 @@
 
 ast_struct! {
     /// A `where` clause in a definition
-    #[derive(Default)]
     pub struct WhereClause {
-        pub where_token: Option<Token![where]>,
+        pub where_token: Token![where],
         pub predicates: Delimited<WherePredicate, Token![,]>,
     }
 }
 
-impl WhereClause {
-    pub fn none() -> Self {
-        WhereClause::default()
-    }
-}
-
 ast_enum_of_structs! {
     /// A single predicate in a `where` clause
     pub enum WherePredicate {
@@ -232,7 +225,7 @@
                     .collect::<Vec<_>>()
                     .into(),
                 gt_token: gt,
-                where_clause: WhereClause::default(),
+                where_clause: None,
             }
         ));
     }
@@ -346,17 +339,13 @@
     }
 
     impl Synom for WhereClause {
-        named!(parse -> Self, alt!(
-            do_parse!(
-                where_: keyword!(where) >>
-                predicates: call!(Delimited::parse_terminated) >>
-                (WhereClause {
-                    predicates: predicates,
-                    where_token: Some(where_),
-                })
-            )
-            |
-            epsilon!() => { |_| WhereClause::default() }
+        named!(parse -> Self, do_parse!(
+            where_: keyword!(where) >>
+            predicates: call!(Delimited::parse_terminated) >>
+            (WhereClause {
+                predicates: predicates,
+                where_token: where_,
+            })
         ));
 
         fn description() -> Option<&'static str> {
@@ -564,10 +553,8 @@
 
     impl ToTokens for WhereClause {
         fn to_tokens(&self, tokens: &mut Tokens) {
-            if !self.predicates.is_empty() {
-                TokensOrDefault(&self.where_token).to_tokens(tokens);
-                self.predicates.to_tokens(tokens);
-            }
+            self.where_token.to_tokens(tokens);
+            self.predicates.to_tokens(tokens);
         }
     }
 
diff --git a/src/item.rs b/src/item.rs
index 57c9400..41c56d9 100644
--- a/src/item.rs
+++ b/src/item.rs
@@ -715,7 +715,7 @@
         generics: syn!(Generics) >>
         inputs: parens!(Delimited::parse_terminated) >>
         ret: syn!(ReturnType) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         inner_attrs_stmts: braces!(tuple!(
             many0!(Attribute::parse_inner),
             call!(Block::parse_within)
@@ -860,7 +860,7 @@
             (args, variadic)
         )) >>
         ret: syn!(ReturnType) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         semi: punct!(;) >>
         ({
             let ((inputs, variadic), parens) = inputs;
@@ -927,7 +927,7 @@
         type_: keyword!(type) >>
         ident: syn!(Ident) >>
         generics: syn!(Generics) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         eq: punct!(=) >>
         ty: syn!(Type) >>
         semi: punct!(;) >>
@@ -966,7 +966,7 @@
         union_: keyword!(union) >>
         ident: syn!(Ident) >>
         generics: syn!(Generics) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         fields: braces!(call!(Delimited::parse_terminated_with,
                               Field::parse_struct)) >>
         (ItemUnion {
@@ -994,7 +994,7 @@
         bounds: cond!(colon.is_some(),
             call!(Delimited::parse_separated_nonempty)
         ) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         body: braces!(many0!(TraitItem::parse)) >>
         (ItemTrait {
             attrs: attrs,
@@ -1072,7 +1072,7 @@
         generics: syn!(Generics) >>
         inputs: parens!(call!(Delimited::parse_terminated)) >>
         ret: syn!(ReturnType) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         body: option!(braces!(
             tuple!(many0!(Attribute::parse_inner),
                    call!(Block::parse_within))
@@ -1126,7 +1126,7 @@
         bounds: cond!(colon.is_some(),
             call!(Delimited::parse_separated_nonempty)
         ) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         default: option!(tuple!(punct!(=), syn!(Type))) >>
         semi: punct!(;) >>
         (TraitItemType {
@@ -1172,7 +1172,7 @@
             epsilon!() => { |_| None }
         ) >>
         self_ty: syn!(Type) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         body: braces!(many0!(ImplItem::parse)) >>
         (ItemImpl {
             attrs: attrs,
@@ -1237,7 +1237,7 @@
         generics: syn!(Generics) >>
         inputs: parens!(call!(Delimited::parse_terminated)) >>
         ret: syn!(ReturnType) >>
-        where_clause: syn!(WhereClause) >>
+        where_clause: option!(syn!(WhereClause)) >>
         inner_attrs_stmts: braces!(tuple!(
             many0!(Attribute::parse_inner),
             call!(Block::parse_within)
diff --git a/tests/test_derive_input.rs b/tests/test_derive_input.rs
index fe9ef0c..4462b1c 100644
--- a/tests/test_derive_input.rs
+++ b/tests/test_derive_input.rs
@@ -221,7 +221,7 @@
                 }),
             ].into(),
             gt_token: Some(Default::default()),
-            where_clause: WhereClause::default(),
+            where_clause: None,
         },
         body: Body::Enum(BodyEnum {
             variants: vec![
diff --git a/tests/test_generics.rs b/tests/test_generics.rs
index 0811a97..4365f33 100644
--- a/tests/test_generics.rs
+++ b/tests/test_generics.rs
@@ -56,8 +56,8 @@
                 eq_token: Default::default(),
             }),
         ].into(),
-        where_clause: WhereClause {
-            where_token: Some(Default::default()),
+        where_clause: Some(WhereClause {
+            where_token: Default::default(),
             predicates: vec![
                 WherePredicate::BoundPredicate(WhereBoundPredicate {
                     bound_lifetimes: None,
@@ -77,7 +77,7 @@
                     ].into(),
                 }),
             ].into(),
-        },
+        }),
     };
 
     let (impl_generics, ty_generics, where_clause) = generics.split_for_impl();
