Mercurial > octave-nkf
diff libinterp/octave-value/ov-classdef.cc @ 18262:69990d5edcc2
Allow to parse external methods declaration in classdef files.
* libinterp/parse-tree/parser.h
(octave_base_parser::start_classdef_external_method,
octave_base_parser::finish_classdef_external_method): New methods.
* libinterp/parse-tree/oct-parse.in.yy
(octave_base_parser::start_classdef_external_method,
octave_base_parser::finish_classdef_external_method): Likewise.
(%destructor): Add missing directives for classdef-related types.
(method, method_decl, method_decl1): New nonterminal rules.
(methods_list): Use "method" on terminal.
* libinterp/octave-value/ov-classdef.cc
(cdef_package::cdef_package_rep::meta_subsref): When searching for
package methods, only issue an error when error_state is not set.
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Sun, 12 Jan 2014 15:54:43 -0500 |
parents | c4f5c781c3ca |
children | b5be1a2aa5ab |
line wrap: on
line diff
--- a/libinterp/octave-value/ov-classdef.cc Sat Jan 11 22:50:11 2014 -0800 +++ b/libinterp/octave-value/ov-classdef.cc Sun Jan 12 15:54:43 2014 -0500 @@ -3176,7 +3176,7 @@ else retval(0) = o; } - else + else if (! error_state) error ("member `%s' in package `%s' does not exist", nm.c_str (), get_name ().c_str ()); }