diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index d15ec21a63f..f3ab287c32f 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -3350,13 +3350,7 @@ pub impl Parser { a_var } - fn parse_dtor(&self, attrs: ~[attribute]) -> class_contents { - let lo = self.last_span.lo; - let body = self.parse_block(); - dtor_decl(body, attrs, mk_sp(lo, self.last_span.hi)) - } - - // parse an item in a struct definition + // parse an element of a struct definition fn parse_struct_decl_field(&self) -> class_contents { if self.try_parse_obsolete_priv_section() { @@ -3378,7 +3372,9 @@ pub impl Parser { } if self.eat_keyword(&~"drop") { - return self.parse_dtor(attrs); + let lo = self.last_span.lo; + let body = self.parse_block(); + return dtor_decl(body, attrs, mk_sp(lo, self.last_span.hi)) } else { return members(~[self.parse_single_struct_field(inherited)]);