# HG changeset patch # User jwe # Date 1196142706 0 # Node ID 12a12ef1f1bc00204def0582d13f197f186eb460 # Parent cd6ceb8cbf095baf68c8c10734e7a897542937d3 [project @ 2007-11-27 05:51:46 by jwe] diff -r cd6ceb8cbf09 -r 12a12ef1f1bc src/ChangeLog --- a/src/ChangeLog Tue Nov 27 03:29:57 2007 +0000 +++ b/src/ChangeLog Tue Nov 27 05:51:46 2007 +0000 @@ -1,3 +1,8 @@ +2007-11-27 John W. Eaton + + * pt-idx.cc (tree_index_expression::lvalue): Treat object == [] + the same as undefined. + 2007-11-26 John W. Eaton * oct-stream.cc (DO_DOUBLE_CONV): Always use long. diff -r cd6ceb8cbf09 -r 12a12ef1f1bc src/pt-idx.cc --- a/src/pt-idx.cc Tue Nov 27 03:29:57 2007 +0000 +++ b/src/pt-idx.cc Tue Nov 27 05:51:46 2007 +0000 @@ -513,7 +513,9 @@ retval.numel (nel); } - else if (first_retval_object.is_defined ()) + else if (first_retval_object.is_defined () + && ! (first_retval_object.is_real_matrix () + && first_retval_object.is_zero_by_zero ())) { octave_value_list tmp_list = first_retval_object.subsref (ttype, idx, 1); @@ -530,7 +532,9 @@ } else { - if (first_retval_object.is_defined ()) + if (first_retval_object.is_defined () + && ! (first_retval_object.is_real_matrix () + && first_retval_object.is_zero_by_zero ())) retval.numel (first_retval_object.numel ()); else retval.numel (1); @@ -542,7 +546,9 @@ if (! have_new_struct_field) { - if (i > 0 && first_retval_object.is_defined ()) + if (i > 0 && first_retval_object.is_defined () + && ! (first_retval_object.is_real_matrix () + && first_retval_object.is_zero_by_zero ())) { std::string ttype = type.substr (0, i);