comparison src/pt-unop.cc @ 3962:e39b0ee1da6c

[project @ 2002-06-27 14:14:08 by jwe]
author jwe
date Thu, 27 Jun 2002 14:14:09 +0000
parents bf6116ca10eb
children edd758a7ca8d
comparison
equal deleted inserted replaced
3961:635209a37bf4 3962:e39b0ee1da6c
72 72
73 if (op) 73 if (op)
74 { 74 {
75 if (etype == octave_value::op_incr || etype == octave_value::op_decr) 75 if (etype == octave_value::op_incr || etype == octave_value::op_decr)
76 { 76 {
77 octave_lvalue ref = op->lvalue (); 77 op->rvalue ();
78 78
79 if (error_state) 79 if (! error_state)
80 eval_error (); 80 {
81 else if (ref.is_defined ()) 81 octave_lvalue ref = op->lvalue ();
82 { 82
83 ref.do_unary_op (etype); 83 if (! error_state && ref.is_defined ())
84 84 {
85 retval = ref.value (); 85 ref.do_unary_op (etype);
86
87 retval = ref.value ();
88 }
89 else
90 eval_error ();
86 } 91 }
87 else 92 else
88 eval_error (); 93 eval_error ();
89 } 94 }
90 else 95 else
91 { 96 {
92 octave_value val = op->rvalue (); 97 octave_value val = op->rvalue ();
93 98
94 if (error_state) 99 if (! error_state && val.is_defined ())
95 eval_error ();
96 else if (val.is_defined ())
97 { 100 {
98 retval = ::do_unary_op (etype, val); 101 retval = ::do_unary_op (etype, val);
99 102
100 if (error_state) 103 if (error_state)
101 { 104 {
153 156
154 if (op) 157 if (op)
155 { 158 {
156 if (etype == octave_value::op_incr || etype == octave_value::op_decr) 159 if (etype == octave_value::op_incr || etype == octave_value::op_decr)
157 { 160 {
158 octave_lvalue ref = op->lvalue (); 161 op->rvalue ();
159 162
160 if (error_state) 163 if (! error_state)
161 eval_error (); 164 {
162 else if (ref.is_defined ()) 165 octave_lvalue ref = op->lvalue ();
163 { 166
164 retval = ref.value (); 167 if (! error_state && ref.is_defined ())
165 168 {
166 ref.do_unary_op (etype); 169 retval = ref.value ();
170
171 ref.do_unary_op (etype);
172 }
173 else
174 eval_error ();
167 } 175 }
168 else 176 else
169 eval_error (); 177 eval_error ();
170 } 178 }
171 else 179 else
172 { 180 {
173 octave_value val = op->rvalue (); 181 octave_value val = op->rvalue ();
174 182
175 if (error_state) 183 if (! error_state && val.is_defined ())
176 eval_error ();
177 else if (val.is_defined ())
178 { 184 {
179 retval = ::do_unary_op (etype, val); 185 retval = ::do_unary_op (etype, val);
180 186
181 if (error_state) 187 if (error_state)
182 { 188 {