Mercurial > octave
diff libinterp/octave-value/ov-base.h @ 23838:6e0fd7e3c262
Fix argument lookup in '+' package functions (Bug #51532).
* pt-eval.cc (tree_evaluator::visit_index_expression): Check to see if the
expression is a package. If it is, then indexing_object should be false.
* ov.h, ov-base.h, ov-classdef.cc (is_package): New method for checking if
object is a package. It passes information from cdef_meta_object.
* test/module.mk, test/bug-51532/module.mk, test/+package_bug51532/foo.m,
test/bug-51532.tst: Added test for the bug.
author | Piotr Held <pjheld@gmail.com> |
---|---|
date | Mon, 07 Aug 2017 15:05:19 -0700 |
parents | 980f39c3ab90 |
children | a52eb3f210af |
line wrap: on
line diff
--- a/libinterp/octave-value/ov-base.h Mon Aug 07 08:29:39 2017 -0700 +++ b/libinterp/octave-value/ov-base.h Mon Aug 07 15:05:19 2017 -0700 @@ -373,6 +373,8 @@ virtual bool is_classdef_meta (void) const { return false; } virtual bool is_classdef_object (void) const { return false; } + + virtual bool is_package (void) const { return false; } virtual bool isjava (void) const { return false; }