diff -r cef621f76561 libinterp/parse-tree/oct-parse.in.yy --- a/libinterp/parse-tree/oct-parse.in.yy Sat Jan 25 22:56:46 2014 -0500 +++ b/libinterp/parse-tree/oct-parse.in.yy Thu Jan 30 21:50:46 2014 -0500 @@ -291,6 +291,7 @@ %type property_list %type properties_block %type methods_list +%type opt_methods_list %type methods_block %type class_event %type events_list @@ -1619,7 +1620,7 @@ } ; -methods_block : METHODS stash_comment opt_attr_list opt_sep methods_list opt_sep END +methods_block : METHODS stash_comment opt_attr_list opt_sep opt_methods_list opt_sep END { if (! ($$ = parser.make_classdef_methods_block ($1, $3, $5, $7, $2))) @@ -1663,6 +1664,13 @@ { $$ = $1; } ; +opt_methods_list + : // empty + { $$ = new tree_classdef_methods_list (); } + | methods_list + { $$ = $1; } + ; + methods_list : method { octave_value fcn; @@ -1671,7 +1679,7 @@ delete $1; $$ = new tree_classdef_methods_list (fcn); } - | methods_list opt_sep method + | methods_list sep method { octave_value fcn; if ($3)